空指针异常

NullPointerException由RuntimeException派生出来,是一个运行级别的异常。意思是说可能会在运行的时候才会被抛出,而且需要看这样的运行级别异常是否会导致你的业务逻辑中断。

①一个变量是null,及只有其名,没有实值内容,也没分配内存,当你要去取他的长度,对他进行操作就会出现NullPointException,所以声明一个变量时最好给它分配好内存空间,给予赋值。

②尽量避免返回null,方法的返回值不要定义成为一般的类型,而是用数组。这样如果想要返回null的时候,就返回一个没有元素的数组。就能避免许多不必要的NullPointerException,使用NullObject返回代替返回null确是一种不错的选择。

通俗地说:空指针异常,就是一个指针是空指针,你还要去操作它,既然它指向的是空对象,它就不能使用这个对象的方法。

假如s为null,你还要用s的方法,比如s.equals( String x);那么就会产生空指针异常。
(1)当一个对象不存在时又调用其方法会产生异常 obj.method()//obj对象不存在
(2)当访问或修改一个对象不存在的字段时会产生异常 obj.method()//method方法不存在

在Java中一般报空指针异常的原因有以下几种: 
 1字符串变量未初始化; 
 2接口类型的对象没有用具体的类初始化,比如: 
 List lt;会报错 
 List lt = new ArrayList();则不会报错了 
 3当一个对象的值为空时,你没有判断为空的情况。你可以试着把下面的代码前加一行代码: 
 if(rb!=null && rb!="") 
 改成: 
 if(rb==null); 
 if(rb!==null&&rb!="") 或者if((“”).equals(rb)) 
 空指针的解决办法: 
        重点关注报错发生的所在行,通过空指针异常产生的两条主要原因诊断具体的错误。同时为了避免空指针的发生,最好在做判断处理时将“null”或者空值放于 设定的值之前。 
 常见空指针异常的简要分析: 
 (1)空指针错误 
     Java中的8种基本数据类型,变量的值可以有其默认值,加入没有对其正常赋值,java虚拟机是不能 正确编译通过的,因此使用基本的Java数据类型一般不会是不会引起空指针异常的。实际开发中,大多数的空指针异常主要与对象的操作相关。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值