程序运行时报错NullPointerException(空指针)情况以及解决方法
出现空指针异常,常常是因为我们调用的对象是空的而抛出的异常
抛错场景
- 当对空属性或者空对象进行后台传值时可能会抛出异常。常见于接口传值为空或者返回值为空时
- 当对空属性或者空对象与另一个属性做比较时
问题定位:
- 对于日志中的报错信息,在java中抛出异常是从内往外,需要重点关注第一行报错信息,下面的报错都是由于一层层传递调用该方法导致
空指针异常的解决方案:
- Java中任何对象都可以为空,我们可以使用很多种方法来避免产生这类异常。比如我们传统的空值检测,编程规范,以及使用java中各种工具类。
常用的一种就是直接对 对象进行判断,比如if(XXX == null)来对所有用到的对象进行判断,这个对象也就是我们常用的函数参数,当检测到null值时,可以对异常的类型抛出,针对性的异常类型,做一个打桩输出,来确定。
如果使用过Lombok工具的话,里面有一个@NotNull注解,就是指被注释的元素不能为空,就会自定检测
遵守编程规范,可以减少一定的空指针异常的发生
如果返回是集合类型。而且是空的,不要返回null值,而是要返回一个空的集合,如果返回类型是对象的话,我们可以抛出异常
程序运行时报错NullPointerException(空指针)情况以及解决方法相关推荐
- linux直接运行程序加载动态库失败,扣丁学堂Linux培训详解程序运行时加载动态库失败解决方法...
今天扣丁学堂Linux培训老师给大家介绍一下关于Linux程序运行时加载动态库失败的解决方法,希望对同学们学习有所帮助,下面我们一起来看一下吧. Linux下不能加载动态库问题 当出现下边异常情况 . ...
- pip安装kolla-ansible时报错Cannot install ‘PyYAML‘的解决方法
pip安装kolla-ansible时报错Cannot install 'PyYAML'的解决方法 参考文章: (1)pip安装kolla-ansible时报错Cannot install 'PyYA ...
- 程序执行报错Missing Connection or ConnectionString 解决方法
程序执行报错Missing Connection or ConnectionString 解决方法 参考文章: (1)程序执行报错Missing Connection or ConnectionStr ...
- 程序运行时报错 :0xC0000005: 写入位置 0x000000xx 时发生访问冲突的原因
之前在写代码的时候碰到过这个问题:编译通过,但是在程序运行的时候就会停在某一行代码上,提示这个问题: 写入位置 0x0000xxxx 时发生访问冲突 一看到的反应自然是:我的代码出现越界问题了. 在这 ...
- matlab成功安装libsvm后,运行程序仍报错“svmtrain has been removed”解决方法记录
系统:windows11 版本:MATLAB R2018b matlab使用支持向量机做回归预测时需要安装 libsvm 包并进行编译,参考此链接博客<http://t.csdn.cn/CfFo ...
- 用到zlib库的程序运行时报错:无法定位程序输入点createfile2于动态链接库KERNEL32.DLL上
这是因为createfile2至少要windows8及以上才支持,想知道原理的可参看https://msdn.microsoft.com/en-us/library/windows/desktop/h ...
- [968]程序运行时报错:由于找不到mfc110.dll,无法继续执行代码的解决方法
解决方案 出现此问题的原因主要是未安装VC++2012和VS2012的组件,自己直接下载安装即可,不用选择路径,一切按照默认进行. Win10环境下载:https://www.microsoft.co ...
- Pytorch运行时报错No module named ‘matplotlib‘--解决办法
问题描述:我电脑装里pycharm里配置的是anaconda里的python环境,刚安装了pytorch来做一元线性回归问题,运行环境也相应改到pytorch所在目录下的python环境,结果在运行代 ...
- 运行Lattice Diamond时报错 License checkout failed的解决方法
定位license.dat文件出错,打开环境变量,找到LM_LICENSE_FILE进行编辑,删去错误位置,保留license.dat文件的正确地址
最新文章
- ASP.NET Core [1]:Hosting(笔记)
- 理科大学二本计算机系,大学最好就业的二本专业:高校男生女生二本理科比较好的专业...
- 关于数据库插入中文乱码问题
- 利用Aria2高速下载网盘文件
- android 判断当前窗口,Android判断当前界面是否是home界面
- mysql索引为什么使用B+tree,InnoDB与MyISAM 的区别
- 毕淑敏:接纳自卑,感悟幸福
- php 处理tiff,TIFF图像文件(五):LZW的PHP应用
- bluestacks手机模拟器安装qq或微信时,鼠标左键点聊天编辑框后会自动输入 c 字母
- 国家二级计算机vb考试题型,2015全国计算机等级考试二级VB题型分析
- codeforces 812B. Sagheer, the Hausmeister
- gnss rtcm rtklib Ntrip...
- win10 关闭139 135 445端口 (危险端口关闭)
- 计算机桌面文件删除不掉是怎么了,小马教你桌面上文件夹删不掉
【设置方法】
的办法_...
- 计算机二级office查分数,3月份office计算机二级内网查分90,写下一点经验给后来人...
- 如何更改win7开机启动画面
- 爬虫框架开发(4)--- 项目实战——新浪滚动新闻资讯实时数据采集
- 工程师的基本功是什么?如何练习?—学习心得分享
- 图像处理入门和UltraLAB P620系列全能型、高性能、静音级便携工作站
- 15必须掌握的win7快捷键