下面這段程序的打印結(jié)果是:
obj.counter1==1
obj.counter2==0
百思不得其解,counter1沒有附初值,默認(rèn)值也是0啊,為什么他們兩個的結(jié)果不一樣呢?
請大俠講解下其中的原因,謝謝!
public class Singleton {
private static Singleton obj = new Singleton();
public static int counter1;
public static int counter2 = 0;
private Singleton() {
counter1++;
counter2++;
}
public static Singleton getInstance() {
return obj;
}
public static void main(String[] args) {
Singleton.getInstance();
System.out.println("obj.counter1==" + counter1);
System.out.println("obj.counter2==" + counter2);
}
} |
posted on 2008-10-28 15:26
楊愛友 閱讀(1383)
評論(9) 編輯 收藏 所屬分類:
java相關(guān)技術(shù)