Java 单例模式实现:GM 类
这是一个使用私有构造函数和静态代码块实现单例模式的示例代码。GM 类的构造方法是私有的,无法从外部直接调用,只能在类内部初始化。
静态代码块中创建了一个 GM 类实例,并将其赋值给静态变量 me。由于构造方法是私有的,外部只能通过静态变量 me 获取 GM 类的实例。这保证了在整个应用程序中只有一个 GM 类实例。
public class GM {
private GM() {
init();
}
public static final GM me;
static {
me = new GM();
}
}
代码解释:
- 私有构造方法:
private GM()确保了外部无法直接创建GM类的实例。 - 静态变量:
public static final GM me定义了一个静态变量me,用于存储唯一的GM类实例。 - 静态代码块:
static { me = new GM(); }在类加载时执行,创建GM类的实例并赋值给me。 - 获取实例: 通过
GM.me获取唯一的GM类实例。
单例模式的应用场景:
单例模式适用于以下场景:
- 需要保证一个类只有一个实例,例如日志记录器、数据库连接池、配置管理器等。
- 需要控制对实例的访问,例如配置文件、线程池等。
- 需要在整个应用程序中共享数据,例如全局缓存、用户配置等。
原文地址: https://www.cveoy.top/t/topic/oZHZ 著作权归作者所有。请勿转载和采集!