标题:[原创]怎样避免NullPointerExceptions
只看楼主
xiuyuan123
Rank: 2
等 级:新手上路
威 望:3
帖 子:140
专家分:0
注 册:2006-4-25
 问题点数:0 回复次数:0 
[原创]怎样避免NullPointerExceptions

写JAVA程序,NullPointerExceptions会经常陪伴着你
因为JAVA中到处都是对象,而每一个对象都可能为Null
怎样能减少这种错误呢?
我觉得应该尽量调用那些已经确定被实例话的对象的方法
比如
private String name = ""; // 给它初始化一个值不让它为null

public boolean isNameEqual(String paraName) {
return name.equals(paraName);
}
就比下面这种要好
public boolean isNameEqual(String paraName) {
return newName.equals(name); // 这样如果paraName为空的话就会抛出一个 NullPointerException }

当然,如果在程序中name可能被赋值为null的话
那就要这样写了
public boolean isNameEqual(String paraName) {
if (name != null) {
return name.equals(paraName);
}
else if (paraName != null) { // name 为 null 而paraName 不是
return false;
}
else { // 都为空
return true; // 根据你的需要,返回false也行
}
}

至于
public class Animator extends java.applet.Applet implements Runnable{
Vector images;
int imgNumber;
int currentImage=1;
Thread thisThread;
public void init(){
imgNumber=new Integer(getParameter("imgNumber")).intValue();
for (int x=0;x<imgNumber;x++)
{Image img=getImage(getDocumentBase(),"img"+(x+1)+".jpg");
images.addElement(img);
}
}

我觉得可以先给imgNumber=0;
然后还要判断
getParameter("imgNumber")是否为null
这样更好些

搜索更多相关主题的帖子: JAVA程序 private public return null 
2006-04-28 12:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-60801-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.267476 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved