gpt4 book ai didi

java - 为什么我在设置 boolean 值 : true? 时会得到默认的 false

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:13:02 26 4
gpt4 key购买 nike

假设有三个类,分别命名为Tester_1Tester_2Tester_3。它们被定义为:

测试人员_1:

class Tester_1 {

public static void main(String args[]) {
Tester_2.setBoolean(true);
System.out.println(Tester_2.getBoolean());
}
}

测试人员_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;
}

}

测试人员_3:

class Tester_3 {
public static void main(String args[]) {
System.out.println(Tester_2.getBoolean());
}
}

编译所有三个类后,我按以下顺序运行它们:

java Tester_1

java Tester_3

但我得到了这个输出:

第一次运行时为

true,第二次运行时为 false。这是为什么 ?当 Tester_1 将 boolean 值设置为值 true 时,为什么我在运行 Tester_3 时得到默认值 false

最佳答案

static 仅在 Java 虚拟机 (JVM) 级别有效。

每次调用 java xxx 都会创建一个新的 JVM,它不会与上一次调用共享任何内容 => 所有静态变量都会再次获得它们的默认值。

关于java - 为什么我在设置 boolean 值 : true? 时会得到默认的 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14196347/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com