有一个类Only One这个类只能有一个对象请编码实现。
使用单例模式可以实现这个需求。单例模式确保一个类只有一个实例,并提供了一个全局访问点。
以下是一个示例代码:
public class OnlyOne {
private static OnlyOne instance;
private OnlyOne() {
// 私有构造函数,防止外部实例化
}
public static synchronized OnlyOne getInstance() {
if (instance == null) {
instance = new OnlyOne();
}
return instance;
}
}
在这个示例中,我们使用了一个私有的构造函数,防止外部实例化。getInstance()方法是一个静态方法,用于获取OnlyOne类的唯一实例。该方法使用synchronized关键字来确保线程安全。
使用示例:
OnlyOne obj1 = OnlyOne.getInstance();
OnlyOne obj2 = OnlyOne.getInstance();
if (obj1 == obj2) {
System.out.println("obj1和obj2是同一个对象");
} else {
System.out.println("obj1和obj2不是同一个对象");
}
输出结果应该是“obj1和obj2是同一个对象”。因为我们只创建了一个OnlyOne对象,getInstance()方法返回的始终是同一个对象。
原文地址: http://www.cveoy.top/t/topic/bZtG 著作权归作者所有。请勿转载和采集!