java中的空指针解决方案,初学者经常遇到(附加程序员解决bug的常用网址)NullPointerException

本篇文章带大家了解一下空指针异常(java.lang.NullPointerException)

对于初学者来说 空指针异常一直困惑这大家,下面代码演示一下为什么会出现这种异常
 

package com.like.demo.ErrorDemo;

/**
 * @program: NullPointerException
 * @description:
 * @author: 深巷少年梦
 * @create: 2021-12-06 19:34
 **/
public class NullError {
    public static void main(String[] args) {
        String name = null;
        System.out.println(name.length());
    }
}

该代码执行后就会输出java.lang.NullPointerException这样的错误,点击错误 程序就会定位在(System.out.println(name.length());)

java对象要用length方法时出现了该异常

 因为当我们使用一个对象上的属性和方法时,该对象本身就不该存在那么一定会出现该异常,所以在执行中一定要确保该对象必须存在。

比如:

1.当没有我们目前还没有买车且没有驾照时,你非要开车,这肯定不符合常理。

2.当没有女票时,你想要晚上抱着女票睡觉,这显然是在做梦。

3.如果是java程序,当没有对象时,你却使用该对象的功能,那么该功能固然不会实现且程序就会给你报一个NullPointerException

解决空指针问题的核心是找到“谁是空” ,“为什么产生了空”。重点关注报错发生的所在行,通过空指针异常产生的两条主要原因来诊断具体的错误

同时为了避免空指针的发生,我们最好对所有需要用到的对象来进行检测再使用,例如:

我们在if中来判断name不等于空时,我们才使用name里面的length方法

package com.like.deme.ErrorDemo;

/**
 * @program: NullPointerException
 * @description:
 * @author: 深巷少年梦
 * @create: 2021-12-06 19:34
 **/
public class NullError {
    public static void main(String[] args) {
        String name = null;
        if(name!=null){
            System.out.println(name.length());
        }
    }
}

如果空指针异常出现,最好还是手动处理、调用前判断是否为空或者返回空字符串,空集合…使用代码检查工具,可以有效规避空指针异常

还在查百度,有什么问题找这几个网站就对了:

1.cpp reference: https://en.cppreference.com/w/
2.stackoverflow: https://stackoverflow.com/
3.reddit: https://www.reddit.com/r/cpp
4.isocpp: https://isocpp.org/
5.open standstards: http://www.open-std.org/
6.stroustrup: https://www.stroustrup.com/index.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辅导猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值