class Demo4_Car {
public static void main(String[] args) {
Car c = new Car();
c.color = "red";
c.num = 8;
System.out.println(c.color + "....." + c.num);
c = null;
c.run();
结果会是空指针异常,run方法既然里面的东西只是一个字符串而已,没有去调用对象的属性,为什么当对象地址值被赋予空的时候就会空指针异常呢?
也就是说如果run方法是System.out.println(num + "......" + color),那么当c被赋值为null的时候,因为地址值被赋值空了,所以没法调用对象里的属性,所以才会出现空指针异常,但是run方法里只是一个与对象不相关的字符串的时候,把对象地址值赋值为空以后,输出结果还是空指针异常呢?
}
}
class Car {
String color;
int num;
public void run() {
System.out.println("车辆运行");
}
}
|
|