设计模式:对问题行之有效的解决方式,其实它是一种思想。
1.单例设计模式:
解决的问题:就是可以保证一个类在内存中的对象唯一性,必须对于多个程序使用同一个配置信息对象时,就需要保证该对象的唯一性。
如何保证对象唯一性?
- 不允许其他程序用new创建该类对象。
- 在该类中创建一个本类实例。
- 对外提供一个方法让其他程序可以获取该对象。
操作步骤:
- 私有化该类的构造函数。
- 通过new在本类中创建一个本类并私有的对象。
- 定义一个公有的方法,将创建的对象返回。
饿汉式
class Single{ //类已加载,对象就已经存在了
private static Single s=new Single();
private Single(){}
public static Single getInstance(){
return s;
}
}
懒汉式(如果使用多线程并行,可能存在安全隐患)
class Single2{ //类加载进来,没有对象,只有调用了getinstance方法时,才会创建对象(延迟加载形式)
private static Single2 s = null;
private Single2(){}
public static Single2 getInstance(){
if(s==null){
s = new Single2();
}
return s;
}
}
主类函数调用:
public class StaticDome {
public static void main(String[] args){
Single ss= Single.getInstance();
}
}
评论前必须登录!
注册