
NullPointerException(空指针异常)是JVM在我们的应用代码、其他引用的API或中间件遇到以下情况时抛出的运行时异常:
JSPGOU一直以来都和jeecms、jeebbs一样,是收费软件,但是从2014年7月12日开始,开始jspgou发布第一个免费版,金磊科技承诺:永远不向使用jspgou免费版用户索取任何费用,为免费用户提供更好的技术支持服务,根据用户提出的完善建议快速完善jspgou系统。 jspgou系统使命:做中国最优秀的免费网店系统,让更多的用户了解和使用java产品。 jspgou免费版适用对象:不限
- 尝试调用空对象的实例方法。
- 尝试访问或修改空对象的特定字段。
- 尝试将空对象作为数组获取长度。
解决NullPointerException的步骤:
- 查看java.lang.NullPointerException的堆栈跟踪,并确定异常触发的位置(应用代码、第三方API、中间件软件),并提取出相应的行。
- 如果问题出现在应用代码中,则需要进行代码审查。如果问题来自第三方API或中间件,则需要先查看引用的代码,并确定是否间接成为问题的源头,例如将null值传递给第三方API方法等。
- 如果在应用代码中发现问题,则尝试确定哪个对象实例为空并导致问题。我们需要修改代码以添加适当的空值检查验证和适当的日志记录,以便我们可以理解空值的来源。
示例
public class NPEDemo {
private String field1 = null;
private String field2 = null;
public String getField1() {
return field1;
}
private void setField1(String field1) {
this.field1 = field1;
}
public String getField2() {
return field2;
}
private void setField2(String field2) {
this.field2 = field2;
}
public static void main(String[] args) {
try {
NPEDemo npe = new NPEDemo();
npe.setField1("field1 value");
npe = null;
npe.setField2("field2 Value");
} catch (Throwable e) {
System.out.println("Java Error is: "+e );
e.printStackTrace();
}
}
}输出
Java Error is: java.lang.NullPointerException java.lang.NullPointerException at NPEDemo.main(NPEDemo.java:24)










