作者TonyQ (骨头)
看板java
标题Re: [问题] 关於NullPointerException
时间Sun Mar 25 18:18:44 2007
※ 引述《ldg (ldg)》之铭言:
: 归纳出这样的结论:
: 就是要开一个reference variable阵列
: 一定要开多少用多少
: 例如需要n个reference variable
: 不可以贪图coding辨识方便
: 而这样设定reference[] array=new reference[n+1];
: 让index从1到n
: 请问这样是正确吗?
: 回个文跟小弟说说吧
: 因为已经被这讯息搞了整晚 Orz
nullPointerException的用意
是要你在存取的时候,一定要先初始化过那个元素。(基本资料型态除外。)
比方说今天是 int[] k=new int[100];
k[1]=5 ; //没问题 因为int会给定初值0
但是今天如果是
class Person{
int age;
Person(){
age=0;
}
Person(int k){
age=k;
}
public int getAge(){
return age;
}
public void setAge(int k){
age=k;
}
}
Person[] k=new Person[100];
k[2]=new Person(); //初始化 k[2]
k[2].setAge(5); //ok! 因为k[2]已被初始化
k[1].setAge(5); // error: k[1]尚未被初始化 处於null状态,
会产生nullPointerException。
--
I am a person, and I am always thinking .
Thinking in love , Thinking in life ,
Thinking in why , Thinking in worth.
I can't believe any of what ,
I am just thinking then thinking ,
but worst of all , most of mine is thinking not actioning...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.27.68