讓有三類命名Tester_1
,Tester_2
,Tester_3
。他們被定義爲:當我設置布爾值:true時,爲什麼會得到默認值false?
Tester_1:
class Tester_1 {
public static void main(String args[]) {
Tester_2.setBoolean(true);
System.out.println(Tester_2.getBoolean());
}
}
Tester_2:
class Tester_2 {
public static boolean var = false; // Static var
public static void setBoolean(boolean value) {
var = value;
}
public static boolean getBoolean() {
return var;
}
}
Tester_3:
class Tester_3 {
public static void main(String args[]) {
System.out.println(Tester_2.getBoolean());
}
}
後我編譯所有的三個班,我在下面的順序運行它們:
java Tester_1
java Tester_3
,但我得到這樣的輸出:從第一次運行
真正和假從第二次運行。這是爲什麼 ?當Tester_1將布爾值設置爲值true
當我運行Tester_3時,爲什麼我會得到默認的false
?
有沒有什麼辦法可以在現有的JVM中綁定新進程'java Tester_3'? –
我不認爲你可以 - 但你總是可以從第一個程序中調用'Tester_3.main()'。你也許可以更詳細地解釋你想要達到的目標。 – assylias