根据JAVA中的规则,如果对象引用被声明但未初始化,则JAVA将其初始化为null。那么,为什么这个错误发生在我的代码?请帮我一下。
Main.java:28: error: variable obj might not have been initialized
if(obj==null)
^
class c {
int age=12;
c variable123;
}
public class A {
c obj;
if (obj==null) System.out.println(obj);
}
您读错了文档。类(非final)变量初始化为空值,局部值未初始化,导致编译器错误。
详情见https://docs.oracle.com/javase/specs/jls/se17/html/jls-16.html