public class Singleton {
private Singleton(){}
private static volatile Singleton s;
public static Singleton getInstance(){
if(null==s){
//在多线程环境下会有有多个线程到该运行点
synchronized (Singleton.class) {
if(null==s){ //双重检查机制,确保多个线程 只能创建一个实例
s=new Singleton();
}
}
}
return s;
}
}