8-1,老师您好,我有一个关于finally关键字的问题。

8-1,老师您好,我有一个关于finally关键字的问题。

如果try中产生了异常,且无法与任何catch匹配,此时:

  1. finally中的代码会执行吗?

  2. finally之后(finally块以外)的代码会执行吗?

另外:

3.如果try中产生的异常被成功捕获并处理,那么之后的代码(即使不在finally中)是否会被执行呢?

谢谢老师。

正在回答

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

1回答
  1. finally中的代码无论何时都会被执行。

  2. finally块外有其他代码也会执行。

  3. 如果try中产生的异常被成功捕获并处理,finally之后的代码也会被执行(除非人为的不允许执行)。

    祝学习愉快~

  • 朱裕炜 提问者 #1
    谢谢老师。关于第二个问题,我还想和您确认一下:即如果try中产生了异常,且无法与任何catch匹配,即没有被处理,那么此时finally以“外”之后的代码会被执行吗?
    2018-06-24 21:17:18
  • irista23 回复 提问者 朱裕炜 #2
    会执行~~~
    2018-06-25 10:23:20
  • 朱裕炜 提问者 回复 irista23 #3
    谢谢老师,那既然如此,即不管try中有没有抛出异常,也不管catch有没有对其进行捕获并处理,finally以内和finally以外之后的代码都会被执行,那么finally有什么意义?我直接把要执行的代码写在后面不就行了?
    2018-06-25 10:43:35
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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