请改写Demo类,使得无论如何,用户至多只能创建并访问Demo类的唯一一个实例
时间: 2024-05-03 17:16:38 浏览: 72
为了实现只能创建并访问Demo类的唯一一个实例,我们可以使用单例模式。
以下是改写后的Demo类:
```java
public class Demo {
private static Demo instance;
//私有化构造器,防止外部创建实例
private Demo() {}
//提供静态方法获取唯一实例
public static Demo getInstance() {
if (instance == null) {
instance = new Demo();
}
return instance;
}
//其他方法
public void doSomething() {
//...
}
}
```
在这个实现中,构造器被私有化了,这意味着其他类无法通过`new`关键字创建Demo类的实例。我们提供了一个静态方法`getInstance()`来获取Demo的唯一实例。在这个方法中,我们首先判断`instance`是否为`null`,如果是则创建一个新的Demo实例,否则直接返回已有的实例。这种做法确保了无论如何,用户至多只能创建并访问Demo类的唯一一个实例。
阅读全文