有三个问题

有三个问题

1、catch语句的参数是自己能随便定义一个还是必须是视频里的那个固定的只能用e?还是说可以自定义但是一般都用e?

2、try catch finally是这三者都必须有嘛?还是try catch必须有finally可选?

3、try语句抛出异常会进入catch语句,如果catch语句也抛出异常的话,后面的其他代码内容是否还会执行呢?是否执行和finally语句中的内容是否有关??

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,问题解答如下:

1、参数是自定义的,一般用e或者err都可以,代表的是错误信息

2、try catch必须有finally可选,根据实际情况选择

3、即使catch语句也抛出异常,finally语句还会执行。例如:

http://img1.sycdn.imooc.com//climg/5e5f16af09a83abc02800154.jpg

http://img1.sycdn.imooc.com//climg/5e5f16b409d3baac02910129.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • Aurora_Meteor 提问者 #1
    前两个问题我知道了,第三个问题老师你没理解我的意思。我不是问的finally语句是否会执行,问的是try catch语句块后面的内容。 1、如果try和catch都抛出异常,而且没有finally语句,之后的其他语句是否会执行 2、如果try和catch都抛出异常,而且有finally语句,finally是处理了异常,之后的其他语句是否会执行 3、如果try和catch都抛出异常,而且有finally语句,但是finally没有处理异常(应该是也抛出异常吧?),之后的其他语句是否会执行
    2020-03-04 13:40:20
好帮手慕星星 2020-03-04 16:49:54

同学你好,finally中一般不处理异常。下面的语句是否执行取决于catch中是否手动抛出了异常:

1、catch中手动抛出异常,下面代码不执行

http://img1.sycdn.imooc.com//climg/5e5f68fd095d1a6c02940221.jpg

http://img1.sycdn.imooc.com//climg/5e5f6b7a092e6fc002600111.jpg

2、catch中不抛出异常,下面内容执行

http://img1.sycdn.imooc.com//climg/5e5f6b980916fef602920223.jpg

http://img1.sycdn.imooc.com//climg/5e5f6ba009bdc43501970148.jpg

自己可以测试理解下,祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师