目录
- 单例模式介绍
- 代码实现单例模式
单例模式介绍
- 单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供一个全局访问点。
- 单例模式可以通过private属性实现。通过将类的构造函数设为private,可以防止类在外部被实例化。
- 单例模式通常会提供一个静态方法来获取类的唯一实例。
代码实现单例模式
在 Java 中,可以使用以下代码实现单例模式:
public class Singleton { private static Singleton instance;private Singleton() { // 防止通过反射创建多个实例 if (instance != null) { throw new IllegalStateException("Singleton instance already exists"); } }public static Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; }
}
在上面的代码中,Singleton 类有一个私有的构造函数和一个静态的 getInstance() 方法,用于获取 Singleton 类的唯一实例。当第一次调用 getInstance() 方法时,会创建一个 Singleton 实例,并将其存储在 instance 变量中。之后,每次调用 getInstance() 方法时,都会返回已经创建的实例,而不是创建新的实例。
要使用 Singleton 类的实例,可以像下面这样:
Singleton singleton = Singleton.getInstance();
这样,就可以确保在整个应用程序中只有一个 Singleton 实例,可以全局访问该实例。