单例设计模式

单例设计模式:保证一个类在内存中只有一个对象


饿汉单例设计模式:
    1、私有化构造函数
    2、声明本类的引用类型变量,并且使用该变量指向本类对象。
    3、提供一个公共静态的方法获取本类的对象

class Single(){

  private static Single single = new Single();

  private Single(){}

  public static Single getInstance(){
        return single;
  }
}

 

懒汉单例设计模式:
    1、私有化构造函数
    2、声明本类的引用类型变量,但是不要创建对象。
    3、提供公共静态的方法获取本类的对象,获取之前先判断是否已经创建了本类对象,如果已经创建了,那么直接返回对象即可,如果还没有创建,那么先创建本类的对象然后再返回。

class Single2(){
    private static Single2 single2;
    private Single2(){}
    public static Single2 getInstance(){
        if(s == null){
            s = new Single2();
        }
        return s;
    }
}

推荐使用:饿汉单例设计模式,懒汉设计模式存在线程安全问题(后期学习怎么解决)

posted @ 2016-09-19 18:21  FromNowOns  阅读(117)  评论(0编辑  收藏  举报