在Java中,当声明一个对象但没有为其分配内存(即没有用new关键字创建一个实例),则这个对象引用就会指向null。如这种状态下尝试访问对象的方法或属性,就会抛出空指针异常(NullPointerException)。
常见场景
- 对象未初始化或赋值为null:在使用对象之前未进行初始化或者赋值为null。
- 方法返回null值:调用方法返回null值,但未进行空值检查。
- 数组访问时的空指针:对数组元素进行操作时,数组本身为null。
- 集合操作:对集合中的元 素进行操作时,集合本身为null。
解决方案
- 使用条件判断防止
- 优先使用Optional类
- 使用 equals() 方法时,要遵循 “常量在前变量在后”的原则
- 使用String.valueOf()方法代替toString()方法
- 通过返回空的 Collection 或 Array 来替代 null 值
- 从数据库取数据,可以约束哪些字段不能为空
没有回复内容