Java布尔初始化



为什么此代码运行正常

static boolean bool;
public static void main() {
System.out.println(bool);
}

在这里

public static void main() {
boolean bool;
System.out.println(bool);
}

我有错误:变量"bool"可能没有初始化

它们不是都有默认值false吗?

Java就是这样工作的。所有";静态";以及";实例";基元类型的类成员由编译器初始化。特别是,boolean总是初始化为false(这是您的第一段代码(
相反,局部变量(第二段代码(";必须";手动初始化,否则会出现编译错误。

最新更新