单例模式 - 969251639/study GitHub Wiki
单例模式确保某个类只有一个实例 ,而且自行实例化并向整个系统提供这个实例
单例模式特点:
1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
public class A {
private static volatile A a = null;//声明volatile对象,防止new时重排序,导致a对象有可能返回没有初始化的对象
private A(){}
public static A getInstance() {
if(a == null) {
synchronized (A.class) {
if(a == null) {//双重检查
a = new A();
}
}
}
return a;
}
}