我只是坚持错误“线程中的异常”主“java.lang.NullPointerException ” 请通过解决方案告诉我我犯的错误。它是一个简单的数组。我如何从这个数组访问方法setAge(int)。
Person arr[] = new Person[2];
arr[0].setAge(20);
感谢。
答案 0 :(得分:6)
您正在创建一个包含两个空插槽的数组。首先填充这些插槽:
arr[0] = new Person();
arr[1] = new Person();
或者对于大数组使用循环:
for(int personIndex = 0; personIndex < arr.size; personIndex++)
{
arr[personIndex] = new Person();
}
答案 1 :(得分:2)
您永远不会初始化阵列中的任何对象。
arr[0] = new Person();
答案 2 :(得分:1)
您尚未初始化一系列人员。首先像这样初始化数组的对象
Person arr[] = new Person [2];
arr[0]=new Person ();
arr[1]=new Person ();
现在设定人的年龄: -
arr[0].setAge(20);
arr[1].setAge(25);
答案 3 :(得分:0)
new Person [2]创建一个数组,它可以在arr [0]和arr [1](基本上等于null)中保存两个人对象。但是你没有将arr [0]初始化为一个新的Person对象。地点。所以当试图为位于arr [0]的对象设置值时,你试图将age设置为一个空对象,它会抛出一个空指针异常..