class Singleton{
private static Singleton instance=new Singleton();
public static int count;
public static int count1=0;
private Singleton(){
count++;
count1++;
}
public static Singleton getInstance(){
return instance;
}
}
public class SingleTonDemo {
public static void main(String[] args) {
Singleton instance=Singleton.getInstance();
System.out.println(instance.count); //1
System.out.println(instance.count1);//0
}
変数の初期化の順序のため。
は
です。 リーリーSingleton
オブジェクトを作成します。この時点では、count
とcount1
は両方とも1
静的初期化
に割り当てられます リーリーcount1
、ここではcount1
が0
2 つ必要な場合は、1 つが必要です。
リーリーinstance
の初期化をcount1
の下に配置するだけです。