用懒汉式单例模式模拟产生孙悟空对象
时间: 2024-09-24 08:26:58 浏览: 24
懒汉式单例模式是一种常用的创建单例对象的方式,它延迟对象的实例化,直到真正需要的时候才去创建。这里我们模拟孙悟空作为单例,可以这样设计:
```java
public class SunWukong {
private static volatile SunWukong instance; // 使用volatile关键字保证线程安全
// 避免直接通过new关键字创建对象,防止多次初始化
private SunWukong() {}
// 获取唯一实例的方法
public static SunWukong getInstance() {
if (instance == null) { // 检查是否已经初始化过
synchronized (SunWukong.class) {
if (instance == null) { // 双重检查锁定
instance = new SunWukong();
}
}
}
return instance;
}
// 孙悟空的具体行为... // 这里可以添加孙悟空特有的属性和方法
}
// 现在你可以像下面这样获取并使用孙悟空单例:
SunWukong monkeyKing = SunWukong.getInstance();
```
在这个例子中,`getInstance()`方法负责创建和返回唯一的孙悟空对象。因为`instance`变量被声明为`volatile`,所以当多线程同时访问时,会保证更新后的值能被其他线程看到。