/**
* @description 线程安全 懒汉式 double-check locking
*/
public class DoubleCheckSingleton implements Serializable {
private static final long serialVersionUID = -6639300923461560175L;
private volatile static DoubleCheckSingleton instance=null;
private DoubleCheckSingleton(){
}
public static DoubleCheckSingleton getInstance(){
if(instance==null){
synchronized (DoubleCheckSingleton.class){
if(instance==null){
instance=new DoubleCheckSingleton();
}
}
}
return instance;
}
//在序列化完成后readResolve返回的对象将替代readObject的
private Object readResolve(){
return instance;
}
}
单例模式--懒汉式(双检锁)
最新推荐文章于 2023-10-17 05:00:00 发布