//单例模式-双重校验锁
public class SingleTon3 {
private SingleTon3(){};
private static volatile SingleTon3 singleTon=null;
public static SingleTon3 getInstance(){
//第一次校验
if(singleTon==null){ // 语句1
synchronized(SingleTon3.class){ // 语句2
//第二次校验
if(singleTon==null){ // 语句3
singleTon=new SingleTon3(); // 语句4
}
}
}
return singleTon;
}
}