欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

荐 java程序员最常见的空指针异常java.lang.NullPointerException

程序员文章站 2022-05-21 11:58:29
前言对于空指针异常来说java程序再熟悉不过,但是对于见到这类的异常,说明我们的系统还不够完善,RunTimeException:运行时异常,又称不受检查异常,不受检查!不受检查!!不受检查!!!重要的事情说三遍,因为不受检查,所以在代码中可能会有RunTimeException时Java编译检查时不会告诉你有这个异常,但是在实际运行代码时则会暴露出来,比如经典的1/0,空指针等。官网api解释public class NullPointerExceptionextends RuntimeExce...

前言

对于空指针异常来说java程序再熟悉不过,但是对于见到这类的异常,说明我们的系统还不够完善,RunTimeException:运行时异常,又称不受检查异常,不受检查!
不受检查!!不受检查!!!重要的事情说三遍,因为不受检查,所以在代码中可能会有RunTimeException时Java编译检查时不会告诉你有这个异常,但是在实际运行代码时则会暴露出来,比如经典的1/0,空指针等。

官网api解释

public class NullPointerException
extends RuntimeException当应用程序尝试在需要对象的情况下使用null时抛出。 这些包括:
调用一个null对象的实例方法。
访问或修改null对象的字段。
取null的长度,好像是一个数组。
访问或修改的时隙null就好像它是一个数组。
投掷null好像是一个Throwable价值。
应用程序应该抛出此类的实例以指示null对象的其他非法使用。 NullPointerException对象可以由虚拟机构建,就像suppression were disabled and/or the stack trace was not writable一样 。

荐
                                                        java程序员最常见的空指针异常java.lang.NullPointerException

举例说明

我们创建一个测试类,然后创建一个判断字符串是否为空的方法,如下

package com.ssm.demo;

public class NullPointerExceptionTest {

	public boolean testNullPointerException(String agr) {
		
		if(agr.equals("")&&agr!=null) {
			return true;
		}else {
			return false;
		}
	}
	
	public static void main(String[] args) {
		boolean isTure=new NullPointerExceptionTest().testNullPointerException(null);
	}
}

运行后抛出空指针异常,如下图:
荐
                                                        java程序员最常见的空指针异常java.lang.NullPointerException

思考

如何避免这类问题的,首先我们要定位到报空指针的代码位置,分析上面的问题,是到了

agr.equals("")

报的空指针,那么我们考虑过agr!=null会报空指针么,改一下试试
荐
                                                        java程序员最常见的空指针异常java.lang.NullPointerException
可以看出来不会报空指针,也跟官网介绍的一毛一样,调用空对象的方法或属性才会报空指针,那么对于上面的判断字符串为空且不为空字符串时怎么办呢,我们可以这样修改,
一万年也不会报空指针了哈哈

"".equals(agr)

荐
                                                        java程序员最常见的空指针异常java.lang.NullPointerException


-END-

如果你喜欢我的分享,欢迎关注微信公众号 java学长分享技术干货!
悄悄告诉你免费赠送重磅互联网架构师教程,提升职场技术水平!
需要java1.8 中文api文档的,关注公众号,回复“java中文”即可领取!

荐
                                                        java程序员最常见的空指针异常java.lang.NullPointerException

本文地址:https://blog.csdn.net/jiarui_mama/article/details/107159514