JAVA java.lang.NullPointerException错误,请问如下代码为何会报这个错误,要如何修改。
classPerson{privateinta;publicintgetage(){returna;}}publicclasstest{publicstaticvoidm...
class Person
{
private int a;
public int getage(){
return a;
}
}
public class test{
public static void main(String[] args){
Person group[] = new Person[5];
System.out.println(group[1].getage());
}
} 展开
{
private int a;
public int getage(){
return a;
}
}
public class test{
public static void main(String[] args){
Person group[] = new Person[5];
System.out.println(group[1].getage());
}
} 展开
1个回答
展开全部
Person group[] = new Person[5];
你只分配了5个元素的空间,但是没有初始化元素,所以出错
你只分配了5个元素的空间,但是没有初始化元素,所以出错
追问
参数定义为private的话,set方法调用不了,不能赋值,岂不是死循环了?
请问这个例子里要怎么初始化呢?
谢谢
追答
加个构造函数可以不?
class Person
{
private int a;
Person(int a1){
a=a1;
}
public int getage(){
return a;
}
}
public class test{
public static void main(String[] args){
Person group[] = new Person[5];
for(int i=0;i<group.length;++i)
group[i]=new Person(i);
System.out.println(group[1].getage());
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询