为什么在 Singleton 对象上调用 clone 方法时会出错?
这是我的单例类:
public class Singleton {
private Singleton (){
}
private static Singleton singleton;
public static Singleton getSingleton(){
if (singleton == null) {
singleton = new Singleton();
return singleton;
}
return singleton;
}
}
这是一个用户定义的类,它在 Singleton 对象上调用 clone 方法:
public class SingletonDemo {
public static void main(String[] args) {
Singleton s = Singleton.getSingleton();
Singleton s1 = (Singleton)s.clone();
}
}