java中什么时候该捕获异常 什么时候该传递异常

java中什么时候该捕获异常 什么时候该传递异常,第1张

捕获异常:通常在运行之前java不报错,但是运行后可能会出现某些未知的错误,但是还不想直接抛出到上一级,那么就需要通过”try{}catch“的形式进行异常捕获,之后根据不同的异常情况来进行相应的处理。

传递异常:通常用在多级方法调用上,最终想将异常返回到最上层进行处理的时候,那么就把异常向上抛出,知道调用的方法处,进行异常捕获。

备注:这两种情况也没法说那种就好,只能是根据实际情况来进行相应的处理。

实现原理:实际上就是先不分具体的异常,直接捕获所有异常的父类Exception,之后在进行实例化异常判断,进行结果输出。举例:

try{

//填写需要捕获异常信息的代码

} catch(Exception e) {//捕获异常信息

if(e instanceof NumberFormatException) {//判断是不是数据转换异常

Systemoutprintln("NumberFormatException");//输出结果

}

if(e instanceof NullPointerException) {//判断是不是空指针异常

Systemoutprintln("NullPointerException");//输出结果

}

}

备注:这个instanceof 实例化可以有效的判断类型是否匹配,而不抛出异常,增加了代码的可复写性(也就是根据异常自定义输出信息)。

try catch是一种异常处理机制,但是有两点需要注意。

1只有在try块内部的代码所抛出的异常才会被捕获,如果是try块范围外的代码,就不会捕捉异常。

2catch需要指定异常类型。只能够捕获指定的异常类型。如果发生崩溃的异常并没有列在catch中,那么也不会捕获该异常。最终导致程序崩溃。

try

{

//要捕获的代码

}

catch (Exception ex)//

{

throw;//这个是抛出,意思是如果你暂时不处理可以抛到调用他的地方去,但是调用的地方一定要捕获异常

//这里的ex表示 系统捕获到的错误提示 }

finally

{

//这里的代码一定会执行,不管你前面做了什么超作

}

以上就是关于java中什么时候该捕获异常 什么时候该传递异常全部的内容,包括:java中什么时候该捕获异常 什么时候该传递异常、java编程用catch(Exception e)捕获异常,在catch中用instanceof对不同的异常分别处理、为什么使用Try,Catch捕获异常,程序依然Crash等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10102553.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存