The lazy man style of the singleton design pattern

class Singleton {
    private static Singleton instance = null;
    private Singleton(){}
    public static Singleton getInstance(){
        if(instance==null){
            synchronized(Singleton.class){
                if(instance == null){
                    instance=new Singleton();
                }    }    }
        return instance;
    }     
}
public class TestSingleton{
    public static void main(String[] args){
        Singleton s1=Singleton.getInstance();
        Singleton s2=Singleton.getInstance();
        System.out.println(s1==s2);
    }    
}

  

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325610410&siteId=291194637