Java常用编码技巧
Less than 1 minute
Java常用编码技巧
LazyHolder 实现单例
Java中实现单例的几种方式之一是使用LazyHolder单例模式。这是一种懒加载方式,当需要使用时再去初始化,避免了提前初始化的浪费,同时也是线程安全的。
LazyHolder单例模式的核心思想是定义一个私有的静态类,在这个类内部定义一个私有的静态变量,用于持有单例对象,外部通过公共的静态方法获取单例对象。
以下是LazyHolder单例模式的实现方式:
public class LazySingleton {
private LazySingleton() {}
private static class LazyHolder {
private static final LazySingleton INSTANCE = new LazySingleton();
}
public static LazySingleton getInstance() {
return LazyHolder.INSTANCE;
}
}
通过这种方式定义的单例模式,生命周期与整个应用程序相同,只有在应用程序退出时才会释放掉。