- 分享
- 0
- 人气
- 0
- 主题
- 7
- 帖子
- 4707
- UID
- 82675
- 积分
- 5108
- 阅读权限
- 22
- 注册时间
- 2007-6-18
- 最后登录
- 2021-7-27
- 在线时间
- 5767 小时
|
原帖由 soonlvu 于 2009-7-19 02:11 AM 发表
以上的东西是同一题的。。。
要怎样才能解决那个NullPointerException
Exception in thread "main" java.lang.NullPointerException
at testItem.checkDuplicate(testItem.java:29)
at testItem.main(testItem.java:9)
這裡已經指出了在 testItem.java:29 行這裡出錯
所以你想想看, 你在一開始 Item[] item = new Item[100] 這裡有沒有甚麼錯
在 checkDuplicate 中你的 item 只是 Array, 卻沒 handle 任何對象
最簡單的驗證我所說的就是在 Item 的 constructor 中加入 print 即可知道, 如 :
public Item()
{
System.out.println("Default constructor");
this.itemNum=1;
this.itemDesc="";
this.sellPrice=1;
this.qtyOnHand=1;
}
public Item(int itemNum,String itemDesc,double sellPrice,int qtyOnHand)
{
System.out.println("Default constructor with parameters");
this.itemNum=itemNum;
this.itemDesc=itemDesc;
this.sellPrice=sellPrice;
this.qtyOnHand=qtyOnHand;
}
再來 getter 所回傳的 value 怎麼都沒有 this. ???
編寫的時候專注些可以減少很多錯誤, 當你寫完之後最好加上 try....catch 避免一些不必要的錯誤資訊出現
如: book code 我不輸入數字而是輸入文字的話, 你看看會出現甚麼錯誤訊息 |
|