> 首页 > 科技 > 数码 > nullpointerexception

nullpointerexception

来源:本站 作者:佚名 时间:03-27 手机版

java语言与其他编程语言不同,它有严格的异常处理机制,如果需要抛出异常的代码块中没有捕获异常,程序将不会成功编译,换言之:未使用异常捕获、异常捕获方式不正确等,都将导致代码不能被jvm编译。

java标准库,内建了大量的异常处理类,这些类以Throwable 设计为最顶层类。常见的java异常类有:IOException, SocketTimeoutException, UnknownHostException, MalformedURLException、NullPointerException等。

java怎么处理异常?

try{//可能出现异常的代码块} catch (Exception e) { //出现指定的异常时会进入该代码块。//捕获到异常后处理异常的代码块} finally { //可选//不管是否触发了异常,都将被执行}

让人头痛的NullPointerException(空指针异常)

什么时候出现NullPointerException?从上面的java异常结构可以看出NullPointerExcetion继续自RuntimeException,即表示这是一种运行时才会触发的异常。

当程序运行时,对象未初始化或为空时,NullPointerException就出现了,写Java程序时要特别注意这个异常,该异常不捕获,直接导致整个程序崩溃。

因此,我们要很小心,在对象可能为空的情况下,要积极做null检查,不然,NullPointerException就在那等着我们了。

如何防范NullPointerException?

java是纯粹面向对象的编程语言,一切都是对象。对象就有方法和属性,在为空的对象中调用方法就会出现NullPointerException,一个很简单的例子:

public String getName(Cat c){return c.name;}

这段代码用来获取猫(Cat)对象:c的姓名,这里的c为null时,100%会出现空指针错误了。保险的作法是在执行name方法前先检查u是否为空?

改一下:

public String getName(Cat c){if( c == null ){return "is null";}return c.name;}

这样就不会导致出现空指针异常了,一个经验,对于那些可能为空的对象进行操作时,一定要检查是否为空,可避免空指针异常。java 空指针错误几乎每个人都栽过,至少我就曾在这上面吃了不少苦,写过一个网络程序,是获取网页的,大概在进行了3个小时时,程序崩溃了,多处出现了NullPointerException,后来在一段摸索后,对可能出现该异常的地方进行异常捕获,之后就正常了。java 官方也知道这个问题,于是在java 8 中引入了 OPtional 类,专门用来解决null的安全问题,上面的代码用Optional改写成:

public static String getName(Cat s){Optional cat = Optional.ofNullable(s);if(!cat.isPresent()){return "is Null";}return cat.get().name;}

代码依然这么多,Optional可以有更简洁的写法,来试一下:

public static String getName(Cat s){return Optional.ofNullable(s).map(sl->sl.name).orElse("is Null");}

这才是Optional的本意,简洁易懂,链式操作,用Optional避免了if判断,简洁了不少。

java.lang.nullpointerexception是什么意思

public class NullPointerExceptionextends RuntimeException</dt>当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象的实例方法。 访问或修改 null 对象的字段。 将 null 作为一个数组,获得其长度。 将 null 作为一个数组,访问或修改其时间片。 将 null 作为 Throwable 值抛出。 应用程序应该抛出该类的实例,指示其他对 null 对象的非法使用。

java.lang.NullPointerException 是什么意思啊 该如何处理

这个是空指针异常,空指针的解决办法: 重点关注报错发生的所在行,通过空指针异常产生的两条主要原因诊断具体的错误。同时为了避免空指针的发生,最好在做判断处理时将“null”或者空值放于设定的值之前。

在Java中一般报空指针异常的原因有以下几种: 

1、字符串变量未初始化;

2、接口类型的对象没有用具体的类初始化,比如:

List lt;会报错

List lt = new ArrayList();则不会报错了

3、当一个对象的值为空时,你没有判断为空的情况。你可以试着把下面的代码前加一行代码: 

if(rb!=null &&rb!="")

改成:

if(rb==null)

if(rb!==null&&rb!="") 或者if((“”).equals(rb))

扩展资料:

空指针异常的报错

root cause

java.lang.NullPointerException

Dao.BookInfor.ImFromClassification(BookInfor.java:31

org.apache.jsp.front.home_jsp._jspService(home_jsp.java:120)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)

javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

相关推荐:

十大学生平价好用眼线笔

nullpointerexception

十大不晕染的眼线液排名

2023平价眼线笔排行榜10强

2023十款平价又好用的眉笔推荐

oece是什么牌子

2023十大不晕妆眼线排行榜

2023速干眼线笔排行榜10强

标签: [db:标签]

声明:《nullpointerexception》一文由排行榜大全(佚名 )网友供稿,版权归原作者本人所有,转载请注明出处。如果您对文章有异议,可在反馈入口提交处理!

最近更新

  • 十大学生平价好用眼线笔

    排行榜大全根据各大平台销量、口碑、评价等数据,甄选出了十大学生平价好用眼线笔:其中卡姿兰 易画速干眼线笔、小奥汀 绚彩玩色眼线液笔01黑色...

    数码 日期:2023-03-27

  • 内蒙古科技大学最好的专业是什么

    内蒙古科技大学优势学科专业名单:1、内蒙古自治区重点学科:控制理论与控制工程、计算机应用技术、采矿工程、钢铁冶金、材料加工工程、机械电...

    百科 日期:2023-03-27

  • nullpointerexception

    java语言与其他编程语言不同,它有严格的异常处理机制,如果需要抛出异常的代码块中没有捕获异常,程序将不会成功编译,换言之:未使用异常捕获、异常...

    数码 日期:2023-03-27

  • 十大不晕染的眼线液排名

    排行榜大全根据各大平台销量、口碑、评价等数据,甄选出了十大不晕染的眼线液排名:其中完美日记 纤细持久黑色眼线液、完美日记 纤细持久棕色眼...

    数码 日期:2023-03-27

  • 如何测量蚯蚓的长度最准确

    方法如下:1、对刻度尺要“三查”。一查刻度尺的尺身是否平直,刻度是否均匀,刻线是否清晰;二查刻度尺的零刻度的位置,若零刻度在刻度尺的端头,应检...

    百科 日期:2023-03-27

  • 2023平价眼线笔排行榜10强

    排行榜大全根据各大平台销量、口碑、评价等数据,甄选出了2023平价眼线笔排行榜10强:其中卡姿兰 易画速干眼线笔、卡姿兰 持久液体眼线笔以及火...

    数码 日期:2023-03-27

  • 内蒙古科技馆在那坐几路公交

    乘坐以下班车都可。锦颐酒店至公交车站途经公交车:机场巴士1号线。如意小区西门至公交车站途经公交车:59路,79路,80路,103路,106路。市政务服务中...

    百科 日期:2023-03-27

  • 2023十款平价又好用的眉笔推荐

    排行榜大全根据各大平台销量、口碑、评价等数据,甄选出了2023十款平价又好用的眉笔推荐:其中小奥汀 炫彩多色眼线笔、KISS ME 顺滑眼线笔以及...

    数码 日期:2023-03-27

邮箱不能为空
留下您的宝贵意见