java基本类型与包装类
程序员文章站
2022-06-14 16:53:55
...
package scjp;
public class PrimiObj {
Integer i;
int x;
public PrimiObj(int y) {
x = i + y;
System.out.println(x);
;
}
public static void main(String[] args) {
new PrimiObj(new Integer(4));
}
}
运行时会出现什么呢?是输出4还是其它的,答案是NullPointerException 。
问题就出在Integer i上,基本类型如果没有赋值默认是0,而Integer是一个对象,也就是一个object,我们知道object没有初始化时默认为null,所以在x=i+y时i为null,报空指针异常。
自认为对这种基本知识能运用自如,可是我确答错了,看来core java不可少。