次のクラスを仮定します
class A{
public final static int num = 7;
public final static A instance = new A();
private A(){}
}
class TestA{
public static void main(String args[]){
System.out.print(A.num);
}
}
このシナリオではnum
、instance
いつ初期化され、いつクラス A が JVM にロードされますか? JVMは初期化時にクラスをロードすることを理解していましたが、間違っている場合は修正してください。クラス A にはプライベート コンストラクターがあるため、外部で初期化することはできません。
前もって感謝します。