单例模式

静态内部类单例模式

public class Sigleton{

  private Sigleton(){}

  public static final Sigleton getInstance(){

    return SigletonHolder.INSTANCE;

  }

 

  private static class SigletonHolder{

    private static final Sigleton INSTANCE = new Sigleton();

  }

}

 

DCL双重校验模式

public class Sigleton{

  private Sigleton(){}

  private static final Sigleton sigleton;

  public static Sigleton getInstance(){

    if{sigleton==null){

      synchronized(Siglethon.class){

        if(sigleton==null){

          sigleton = new Sigleton();

        }

      }

    }

  } 

}

posted @ 2019-08-07 16:24  tingtasia  阅读(90)  评论(0编辑  收藏  举报