2020/08/22 QQ1017871939 小白学习编译时异常处理

     异常中的编译时异常

编译时异常
除了RuntimeException 以外其它的异常称为checked exception(检测异常、受检异常) ,必须捕获的异常,进行处理;不捕获程序会报错。

为什么会产生异常?下图数产生异常的缘由
在这里插入图片描述

**

Java中常见异常处理:所用到的五大关键字分别是 try catch finally throws throw

**

在这里插入图片描述

try :捕获异常的第一步是用try{…}语句块选定捕获异常的范围,将可能出现异常的代码放在try语句块中。

catch (Exceptiontype e):在catch语句块中是对异常对象进行处理的代码。每个try语句块可以伴随一个或多个catch语句,用于处理可能产生的不同类型的异常对象。如果明确知道产生的是何种异常,可以用该异常类作为catch的参数;也可以用其父类作为catch的参数。
与其它对象一样,可以访问一个异常对象的成员变量或调用它的方法。
getMessage()方法,用来得到有关异常事件的信息
printStackTrace()用来跟踪异常事件发生时执行堆栈的内容。

finally:不论在try、catch代码块中是否发生了异常事件,finally块中的语句都会被执行。finally语句是可选的

**注意事项!!!

第一点:try、catch、finally三个语句块均不能单独使用,三者可以组成 try…catch…finally、try…catch、try…finally三种结构,catch语句可以有一个或多个,finally语句最多一个;

第二点:try、catch、finally三个代码块中变量的作用域为代码块内部,分别独立而不能相互访问。如果要在三个块中都可以访问,则需要将变量定义到这些块的外面;

多个catch块时候,只会匹配其中一个异常类并执行catch块代码,而不会再执行别的catch块,并且匹配catch语句的顺序是由上到下;**

一个Catch语句块的时候
在这里插入图片描述

多个catch语句块的时候
在这里插入图片描述

当try语句有多个异常语句,只会执行先到的异常语句,后面的不执行。只会匹配其中一个异常类并执行catch块代码,而不会再执行别的catch块,并且匹配catch语句的顺序是由上到下;

用图片对比:
getMessage()方法,用来得到有关异常事件的信息
printStackTrace()用来跟踪异常事件发生时执行堆栈的内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值