当前位置: 首页 > 新闻 > 社会 >   nullpointexception > 正文

nullpointexception

2018-10-12 09:55      来源:浙江一号      点击: 次      关键字:nullpointexception,NullPointEx

  NullPointException什么意思

  当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括:

  调用 null 对象的实例方法。

  访问或修改 null 对象的字段。

  将 null 作为一个数组,获得其长度。

  将 null 作为一个数组,访问或修改其时间片。

  将 null 作为 Throwable 值抛出。

  应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。

  java中什么情况能出现nullpointexception

  空指针异常

  声明一个引用类型的变量之后,没有赋值就直接引用。

  比如

  {

  String s;

  System.out.println(s);

  }

  java出现 NullPointException异常解决方法

  java中NullPointException引起原因有以下几类:

  1。对java对象不熟悉,特别体现在初学者及刚入门身上。如:类的成员还是对象的时候,初学者往往不知道如何初始化成员对象,结果导致对象为初始化就调用。

  2。数据是从外部获取,如数据库,取出数据后不检查就直接调用,常发生在用hibernate 等orm 工具取完数据后数据展示部分。

  3。java代码编写习惯。编写类方法不对方法参数进行检查就使用。

  4。引入外部包,而没有引入外部包依赖包

  5。粗心。这是最大的原因,特别是对于有一定编程经验的人来说。

  解决方法:

  第一类属于java 基础不牢,建议多做练习,熟悉java 对象生命周期的相关知识。如java 对象内存分配,堆与栈,java 初始化过程等。

  在外部读入数据的话,建议在读入数据后就检查其是否为null 。当然有时候也跟需求来定,但使用前必须做好检查工作。

  跟编程经验有相当关系。公用的方法,一般使用前检查参数,该抛出异常的抛出异常,该用默认值的用默认值处理。一些私有方法,人们因为觉得只有自己使用,自己控制不传人null 值就可以,懒得去检查空异常。确实我自己也常这样干,但发现自己写的,但自己却总保证不了,不传入空。所以建议使用前检查,但可以不抛出异常,可使用断言,自己用默认值处理掉。

  引入外部包出现NullPointerException,随着各种框架的发展而越来越常见。主要是人们盲目引用各种包,而不去详细评估引用包的效果,及不去了解所引入包的依赖包。现在有maven 工具,如果使用它构建工程的话,依赖报错可能就会少点了。

上一篇:2001太空奥德赛
下一篇:nullpointexception

最新消息