时间:2021-05-20
Java中有两种处理异常的方式,分别是用throws抛出异常、用try、catch捕获异常。
try-catch
在Java
try-catch语句的语法格式:
try{ //代码块}catch(Exception1 e){ //抛出异常后所要进行的操作}当try语句当中捕获到异常时,会将异常抛出到catch语句中匹配异常类型,当异常和catch后面的异常类型相匹配时,则catch语句将会执行。
举个最基础的例子,除数不能为0
try中的异常与catch后面的异常类型匹配的情况:
try{ int i = 1/0;//发生异常立即跳往catch语句中执行,不执行异常代码下面的代码 System.out.println("输出结果为:" + i);}catch(ArithmeticException e){ e.printStackTrace(); System.out.println("编译报错,除数不能为0");}输出结果:
try中抛出的异常与catch后面的异常类型不匹配的情况:
try{ int i = 1/0;//发生异常立即跳往catch语句中执行,不执行异常代码下面的代码 System.out.println("输出结果为:" + i);}catch(NullPointerException e){ e.printStackTrace(); System.out.println("编译报错,除数不能为0"); //因为异常类型不匹配所以该catch语句并未执行}输出结果:
一个try语句可以接多个catch语句
当有多个catch语句时,try部分的语句如果发生异常,就会在依次在各个catch语句中试图匹配异常类型。
try{ int i = 1/0;//发生异常立即跳往catch语句中执行,不执行异常代码下面的代码 System.out.println("输出结果为:" + i); }catch(ArithmeticException e){ e.printStackTrace(); System.out.println("运算条件异常"); //try语句捕获的异常与该catch语句后的异常相匹配,所以执行该catch语句 }catch(NullPointerException e){ e.printStackTrace(); System.out.println("空指针异常"); //try语句捕获的异常与该catch语句后的异常不匹配,所以不执行该catch语句 }JDK1.7之后还有一种不常用的写法:
try{ int i = 1/0;//发生异常立即跳往catch语句中执行,不执行异常代码下面的代码 System.out.println("输出结果为:" + i); }catch (NullPointerException | ArithmeticException e) { e.printStackTrace(); if (e instanceof NullPointerException) System.out.println("空指针异常"); if (e instanceof ArithmeticException) System.out.println("运算条件异常"); }这种写法需要通过instanceof 进行判断具体的异常类型。
两种写法的输出都是一样的:
在catch内部,通常下面的方法输出异常信息:
getMessage() 返回一个字符串对发生的异常进行描述。
printStackTrace() :打印异常信息出错的位置及原因。
到此这篇关于Java中try、catch的使用的文章就介绍到这了,更多相关Java中try catch的使用内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文为大家分析了javascript中try...catch...finally的使用方法,分享给大家供大家参考,具体内容如下稍微复杂一点点,就要用到判断语句,
如下所示:Document//cache缓存//try-catch-finally//1如果try中的代码出现了异常,就会被catch住,再catch中处理异常
导读:在Java中我们使用try-catch进行异常处理,同样的JavaScript也提供了和异常处理类似的异常处理机制,本节我们将对JavaScript异常处
yield不能单独放在try-catch块中,如果try中有yield那么,这个try块后面不许跟着finally块;也不能出现在匿名方法中,所以,看起来yie
1、try-catch语句ECMA-262第3版引入了try-catch语句,作为JavaScript中处理异常的一种标准方式。语法:try{//可能会导致错误