PageBean.java
package org.andy;public class PageBean {
private Integer start;
private Integer limit;
public PageBean(){
}
public PageBean(Integer paramStart, Integer paramLimit) {
this.start = paramStart;
this.limit = paramLimit;
}
public int getStart() {
return this.start.intValue();
}
public int getLimit() {
return this.limit.intValue();
}}
測(cè)試類(lèi):
package org.andy;public class Test {
public static void main(String[] args) {
PageBean pageBean=new PageBean();
StringBuffer sb=new StringBuffer();
sb.append(“start:”)。append(pageBean.getStart());
sb.append(“/t”);
sb.append(“limit:”)。append(pageBean.getLimit());
System.out.println(sb.toString());
}}
運(yùn)行這段代碼時(shí),便會(huì)報(bào)異常,異常如下:
Exception in thread “main” java.lang.NullPointerException
at org.andy.PageBean.getStart(PageBean.java:16)
at org.andy.Test.main(Test.java:7)
很顯然是空指針異常,
這是開(kāi)發(fā)經(jīng)常遇到的問(wèn)題,
當(dāng)Integer類(lèi)型的變量沒(méi)有賦值(默認(rèn)null)的時(shí)候,對(duì)其執(zhí)行intValue(),就會(huì)出現(xiàn)上面的錯(cuò)誤,一個(gè)健壯的程序是不允許這種情況出現(xiàn)的,修改PageBean可以解決:
package org.andy;public class PageBean {
private Integer start;
private Integer limit;
public PageBean() {
}
public PageBean(Integer paramStart, Integer paramLimit) {
this.start = paramStart;
this.limit = paramLimit;
}
public int getStart() {
if (start != null)
return this.start.intValue();
return 0;
}
public int getLimit() {
if (limit != null)
return this.limit.intValue();
return 0;
}}
您正在看的文章來(lái)自瘋狂軟件教育中心 www.fkjava.org
信息咨詢(xún)“Q564205990 星老師