java设计模式~单例

设计模式可以使用我们在软件开发过程中更加灵活,软件的扩展更容易,软件的耦合度更低,设计模式不是在开发中刻意去用的,而是到了什么时候用什么模式的,不能强迫的使用它,应该是自然而然的想到它。

单例模式

在23种设计模式中,单例最为简单和纯粹,也是最容易理解的,即它在软件生命周期里,只有一个实例,就是说你初始化了一个对象之后,它就会一直存在,直到程序结束,在java语言里使用单例的方法有很多,像饿汉单例懒汉单例,在实现过程中前者是在程序启动时就会初始化,而后者是在第一次使用它时进行初始化。

代码实现

饿汉模式

/**
 * 饿汉单例.
 */
public class SingletonObj {
  private static SingletonObj instance = new SingletonObj();

  private SingletonObj() {
  }

  public static SingletonObj getInstance() {
    return instance;
  }
}

懒汉模式

/**
 * 饿汉模式.
 */
public class SingletonLazy {
  private SingletonLazy() {
  }

  public static final SingletonLazy getInstance() {
    return SingletonHolder.INSTANCE;
  }

  private static class SingletonHolder {
    private static final SingletonLazy INSTANCE = new SingletonLazy();
  }
}

原文地址:https://www.cnblogs.com/lori/p/11773960.html