我總是理解靜態變量在引用它們時共享一個實例。我想把這個測試結果告訴我,但結果與我預期的不同。增加一個整型變量不會影響另一個引用同一個對象的變量
static Integer counter = 0;
static Integer test = counter;
public static void main(String args[]) {
counter++;
System.out.println("counter: " + counter);
System.out.println("test: " + test);
}
輸出:
計數器:1
測試:0
由於test
引用counter
我認爲,當我遞增counter
然後test
將自動以及遞增。但是,看起來test
從某處引用0
,問題在哪裏?
它們都是基元而不是對象。 'test'最初是'0',如果你想增加測試,你需要調用'test ++'。 – 2015-04-04 23:18:23