关于单例模式的两个问题,请大虾帮忙!
1.
class S1 {
private S1() {
System.out.println("ok1");
}
private static S1 instance = new S1();
public static S1 getInstance() {
return instance;
}
}
S1是什么时候被创建?是在调用getInstance()时吗?
2.
class S4 {
private S4() {
System.out.println("ok4");
}
private static class S4Holder {
static S4 instance = new S4();
}
public static S4 getInstance() {
return S4Holder.instance;
}
}
这里,instance又是何时被创建?