为了账号安全,请及时绑定邮箱和手机立即绑定

真的需要finally块吗?

真的需要finally块吗?

动漫人物 2021-06-22 17:12:55
如果catch块之后的语句无论如何都要执行,java中finally块的真正用途是什么?例子 try { //Code}catch (Exception e){//Code}finally { System.out.println("anyway it will be        executed"); }System.out.println("anyway it will be executed");
查看完整描述

2 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

不保证底部的语句会被执行。例如,如果

  • try块或匹配catch块使用return(或break在某些情况下)

  • 没有catch块与异常匹配,因此异常未被捕获

  • 在内部引发(但未捕获)另一个(或相同)异常 catch

在所有这些情况下,保证执行finally语句。


查看完整回答
反对 回复 2021-06-23
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

您的 catch 可以return或抛出异常,在此之前您可以使用 finally 来释放资源。最后在控制传递回调用者之前执行。


查看完整回答
反对 回复 2021-06-23
  • 2 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信