【发布时间】:2011-12-22 09:16:40
【问题描述】:
我在这里遇到了一个非常基本的问题,即使它必须存在,我也无法找到解决方案。
我有以下代码:
public class Foo {
public static void main(String[] args) {
String foo;
if (foo != null) {
System.out.println("foo");
} else {
System.out.println("foo2");
}
}
}
它给了我
''变量可能没有被初始化''
。为什么我必须显式分配 null 而不是所有变量都默认为 null 初始化?
【问题讨论】:
-
因为事情就是这样......
-
只有类级别的成员变量,如果你没有显式地初始化它们,它们会被自动初始化;局部变量不会自动初始化。这些只是 Java 编程语言的规则。
标签: java null initialization