JAVA中空指针异常报错的几种可能坑你的情况
2019-10-14 22:26
459 查看
一、局部变量覆盖掉其他变量导致无法使用。
在做Java客户管理的项目的时候,eclipse报出了个空指针异常的错误,但反复检查也并没感觉出错误,调用的数组给它初始化而且赋值了,但是编译器很顽强的报了一个空指针异常的错误,经过反复排查发现,自己是在那个方法的构造函数对其进行初始化的时候写了这么一句:
customers[ ] customers = new Customer[totalCustomer];
这句话相当于创建了一个customers对象customers,而这个对象customers与该方法的属性customers同名,属于一种独立的关系,而在本方法的其他地方调用customers的时候发现开发者并没有对该类的属性customers赋值,仍然属于一种null的状态。所以在本类的其他地方调用customers数组的时候就会报出空指针异常的错误。
总结:
在网上查阅其他资料的时候发现空指针异常的很多报错原因是因为String类的使用有误,但是我在我的当时的代码中并没有使用String类,报错的地方我当时以为以及给他赋值了,所以就尤其奇怪为什么会报出空指针异常的错误。排查发现自己在写代码的时候直接笔误,相当于创建了个局部变量,而局部变量不会在方法结束的时候留下任何东西,这就造成了程序其他地方调用该数组的时候有了空指针异常的错误。
二、数组初始化却未开辟空间
首先声明了Employee[] empsInit = new Employee[11];
在后续使用时直接想用empsInit[0]来对其用set方法进行赋值,但是直接报出空指针异常错误,经排查发现,应当先new Employee();对其进行开辟空间之后才可以操作。
相关文章推荐
- 关于Java空指针异常的几种情况的总结(java.lang.NullPointerException)
- 关于Java空指针异常的几种情况的总结(java.lang.NullPointerException)
- Java中遇到的报错信息为:空指针异常的情况
- 发送Email时候,可能导致异常:未能访问“CDO.Message”对象,的几种情况整理[转]
- spring出现java.lang.IllegalStateException异常的几种可能
- Java中空指针异常的处理
- Java中空指针异常及其处理
- 关于java中空指针异常的原因及解决方法
- 运行 Think In Java中的 RMI 示例可能产生的几种异常及解决
- java中常见的几种异常情况
- 避免Java应用中空指针异常的技巧和最佳实践
- 关于java报空指针错误的几种常见情况
- Java出现null指针的九种情况
- oracle“ORA-00904”错误:标识符无效几种可能情况
- SparkContext初始化失败,java空指针异常
- at org.apache.jsp.index_jsp._jspInit(index_jsp.java:66) 初始化JSP页面时报NULL指针异常
- Java8,iterator的forEachRemaining中remove可能抛异常
- Android有可能产生空指针的情况
- java.lang.NullPointerException 空指针异常问题
- 几种JAVA创建对象时内存的分配情况