懒汉模式(Lazy Initialization)是一种创建型设计模式,它用于在需要时才创建对象。这种模式的主要优点是节省资源,因为它只在真正需要对象时才创建实例。在Java中,懒汉模式可以通过使用静态内部类实现。
以下是一个简单的Java懒汉模式示例:
public class LazySingleton {
// 创建一个静态内部类,用于实现懒汉模式
private static class SingletonHolder {
private static final LazySingleton INSTANCE = new LazySingleton();
}
// 将构造方法设为私有,防止外部实例化
private LazySingleton() {
}
// 提供一个公共静态方法,用于获取单例对象
public static LazySingleton getInstance() {
return SingletonHolder.INSTANCE;
}
}
在这个示例中,我们创建了一个名为LazySingleton
的类。这个类有一个私有构造方法,以防止外部实例化。我们还创建了一个静态内部类SingletonHolder
,它将在第一次调用getInstance()
方法时实例化LazySingleton
对象。这样,我们可以确保LazySingleton
对象只在需要时才创建。