设计模式之一,单例模式
一个类,对外只提供一个对象!
a. 构造器私有化(不让外界new对象)
b. 在本类内实例化对象,然后让外界可以获取到
① 懒汉式
在创建对象的时候才创建对象
② 饿汉式
不管你要不又要,类加载的时候就已经将对象创建好了
示例如下:
public class Single {
private Single(){ //将构造方法私有
}
//方式一
private static final Single SINGLE = new Single();
public static Single getSingtle(){ //该方法需要通过类名调用
return SINGLE;
}
//方式二
public static final Single SINGLE2 = new Single();
//方式三
public static final Single SINGLE3;
static {
SINGLE3 = new Single();
}
//方法四:懒汉式 该方式存在一定的线程安全问题!
public static Single SINGLE4;
public static Single getSingle(){
if(SINGLE4 == null){
SINGLE4 = new Single();
}
return SINGLE4;
}
}