定义
首先介绍一下空指针异样的定义:
空指针异样(NullPointerException): 空指针异样是指 java 中的异样类, 当应用程序试图在须要对象的中央应用 null 时,就会抛出该异样.
简而言之, 就是当你要应用一个对象时, 后果对象并无内容只有 null 值, 那就会抛出空指针异样.(下文简称 NPE)
可能起因
那么当程序中呈现了空指针异样, 咱们该如何去找到并排除异样呢?
呈现 NPE 时, 咱们首先须要依据抛出的异样信息, 去找到出现异常的行号!
之后咱们须要去查看三个方面:
1. 查看呈现 NPE 的行是否有对象调用了办法
2. 如果有对象调用办法的话, 查看调用办法的对象是什么时候进行赋值的, 当初是否还有值
3. 如果该对象是由 spring 容器进行依赖注入 (DI) 进行复制的, 那要查看该对象的援用是否应用了 spring 框架的特定注解 (@Autowired 等) 来形容, 对象援用的属性所在的类是否交给了 spring 框架治理(@springboottest 等注解)
通过这三点间断的查看, 应该能够锁定大部分空指针异样呈现的起因, 找到起因后, 批改就很简略了, 依据所需要求批改程序即可