浅谈java开发NullPointerException解决方式

来源:互联网 发布:国家税务局网络学校 编辑:程序博客网 时间:2024/06/01 14:59

在开发过程,空指针异常就像自己非常好朋友那样,动不动就会报这个,着实让人头疼,却又无法避免,下面我就谈谈我自己在开发中碰见的各种各样的空指针异常和解决的方案。

空指针,顾名思义,变量为空,但,单单变量为空,并不会报这个异常,只有当变量为空,并引用该变量属性,才会报空指针异常。空指针异常,有时候并不是什么大问题,比如说,你忘记初始化了,在java中,是先编译,后执行,当你方法中返回的这个没有初始化的变量时候,那么编译器就会报错,这个很容易就发现了。但是,当你不是返回值,编译器就不会报错了,也不回有提醒,你想找这个空指针就比较坑了。

空指针异常,之所以会抛这个异常,有可能是你用spring的注入时,你没有声明,或者没有写注解,这个错误很难发现,因为编译器不会报错,当运行执行的时候,报错的地方也不是在声明哪里,所以一眼很难看出,就算用断点也没不一定发现。另外一个是“”和null,你不确定是“”还是空对象时,这时候就是个更加难判断的,就算输出或者当断点都不一定能判断出来。

下面就讲一种特别好用的判断是否为空方法给大家,那就是打断点。当发布到服务器时,没有断点,只能靠多打日志来判断对象是否为空了。首先,进入debug模式,在debug模式下,F5单步调试进入函数内部,F6单步调试不进入函数内部,  F7由函数内部返回到调用处,F8一直执行到下一个断点。

阅读全文
1 0