public class HungrySingleton {
private static HungrySingleton instance = new HungrySingleton();
private HungrySingleton() {
}
public static HungrySingleton getInstance() {
return instance;
}
}
懒汉
public class LazySingleton {
// volailte出现在这个位置 是禁止指令重排序
private volatile static LazySingleton instance;
private LazySingleton() {
}
public static LazySingleton getInstance() {
if (instance == null) {
synchronized (LazySingleton.class) {
if (instance == null) {
// 1, 分配内存
// 2,new 对象 (10 5)
// 3,给引用赋值 把内存地址 132
instance = new LazySingleton();
}
}
}
return instance;
}
}



