?? 怎樣避免nullpointerexceptions(原創(chuàng)).txt
字號(hào):
作者:friendcn
日期:2001-5-30 17:38:21
寫(xiě)JAVA程序,NullPointerExceptions會(huì)經(jīng)常陪伴著你
因?yàn)镴AVA中到處都是對(duì)象,而每一個(gè)對(duì)象都可能為Null
怎樣能減少這種錯(cuò)誤呢?
我覺(jué)得應(yīng)該盡量調(diào)用那些已經(jīng)確定被實(shí)例話的對(duì)象的方法
比如
private String name = ""; // 給它初始化一個(gè)值不讓它為null
public boolean isNameEqual(String paraName) {
return name.equals(paraName);
}
就比下面這種要好
public boolean isNameEqual(String paraName) {
return newName.equals(name); // 這樣如果paraName為空的話就會(huì)拋出一個(gè) NullPointerException }
當(dāng)然,如果在程序中name可能被賦值為null的話
那就要這樣寫(xiě)了
public boolean isNameEqual(String paraName) {
if (name != null) {
return name.equals(paraName);
}
else if (paraName != null) { // name 為 null 而paraName 不是
return false;
}
else { // 都為空
return true; // 根據(jù)你的需要,返回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);
}
}
我覺(jué)得可以先給imgNumber=0;
然后還要判斷
getParameter("imgNumber")是否為null
這樣更好些
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -