为什么简单的获取一个空的字符串会报空指针错误?

String s=forecast.getStatus();

就是这么简单的一行代码,forecast是我自己建的一个bean,public class Forecast 里面都是简单的set和get。
现在因为我没有进行set,所以这个Status应该是默认的null才对,获取null还会报空指针错误?

IDE的错误报告:Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.leu.littleweather.bean.Forecast.getStatus()' on a null object reference

神奇的是有时候它又不会报错,有时候会报错。。。真是日了狗了!

阅读 5.6k
3 个回答

getStatus() on a null object reference是指forecast是null,你不能为null对象调用方法。所以你需要检查什么导致forecast有时为null,有时不为null.

是你的forecast为空。。

对象空了,当然报空指针了.

就像你没有女朋友,还指望调女朋友的API吗?想调的话,是不是要先买一个女朋友?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题