public class Test {
Integer i;
int j;
public static void main ( String [] args ) {
Test t = new Test ();
t.go();
}
public void go() {
j=i;
System.out.println(j);
System.out.println(i);
}
}
输出:线程“main”中的异常java.lang.NullPointerException 在Test.go(Test.java:12) 在Test.main(Test.java:8)
答案 0 :(得分:3)
这显然不是错误。您将获得运行时NullPointerException,因为您将空引用(i
)拆箱到基元(j
)中。请参阅JLS §5.1.8。
i
为空的原因是默认情况下实例字段初始化为0,null或false。