java.lang.NullPointerException
在写题过程中遇见问题,创建对象数组之后有空指针异常的错误。
引用某博主的语句
再声明对象数组后 ,必须对每个数组成员进行实例化话 才能直接使用,否则报 空指针异常!
例如:
//创建一个学生类数组;
Student [] stu=new Student[5];
//在使用数组成员时 必须进行实例化
stu[i]=new Student();
否则报错
`Exception in thread “main” java.lang.NullPointerException
at Test.main(Test.java:10)
`
附加小彩蛋,如果某对象数组两个值前后分别指向一个实例化对象,并且在过程中这个对象值发生改变,这数组中两个成员的值还是这个实例化对象改变后的值。
例:public class Test {
public static void main(String[] args) {
A[] as=new A[10];
A am=new A(5,2);
A ac=new A(4,3);
as[0]=am;
am.a=7;
am.b=8;
as[1]=am;
// as[2].a=73;
// as[2].a=671;/*这两句会报错异常*/
System.out.println(as[0].a+" "+as[0].b);
System.out.println(as[1].a+" "+as[1].b);
}
}
class A{
int a;
int b;
A(int a,int b){
this.a=a;
this.b=b;
}
A(){}
}
输出结果:
7 8
7 8