温馨提示×

怎样通过java static实现单例模式

小樊
82
2024-10-10 00:56:36
栏目: 编程语言

在 Java 中,使用 static 关键字可以实现单例模式。以下是一个简单的示例:

public class Singleton {
    // 使用 static 关键字定义一个静态实例变量
    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;
    }
}

在这个例子中,我们使用了一个私有的构造方法和一个静态的实例变量。getInstance() 方法用于获取实例,如果实例不存在,则创建一个新实例。由于构造方法是私有的,所以无法从外部创建新实例。这样就实现了单例模式。

0