继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

java单例模式四种实现方式

喵喔喔
关注TA
已关注
手记 554
粉丝 103
获赞 606

1.饿汉式

  public class DownLoad{

  private static final DownLoad mDownload =new DownLoad();

  private download(){

  }

  public static DownLoad getInstance(){

  return mDownload ;

  }

  }

2.懒汉式

 public class DownLoad{

  private static final DownLoad mDownload ;

  private download(){

  }

  public static DownLoad getInstance(){

    if(mDownload ==null){

    mDownload =new DownLoad();

    }

  return mDownload ;

  }

  }

3.double check(会出现空指针问题,可通过添加volatile关键字解决)

  public class DownLoad{

  private static volatile DownLoad mDownload ;

  private download(){

  }

  public static DownLoad getInstance(){

    if(mDownload ==null){

    synchronized(DownLoad.class){

      if(mDownload ){

        mDownload =new DownLoad();

      }

    }

   }

  return mDownload ;

  }

 }

4.静态内部类

  public class DownLoad{

    public static class{

    private static DownLoad mDownload=new DownLoad();

    public static DownLoad getInstance(){

      return mDownload;

    }

  }

}

原文链接:http://www.apkbus.com/blog-948824-77440.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP