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

关于finally语句块的作用

finally语句块里写上的语句和我在catch语句块下直接写上的语句有什么区别?比如如下两段代码区别在哪里。

第二,如果有区别的话,麻烦再补充一下finally的使用场景和用它的好处,谢谢

5806df8e0001797903220263.jpg

5806df8e0001b43103650232.jpg


正在回答

2 回答

finally是   不管走try还是try中catch到异常了 都会走到的地方.

0 回复 有任何疑惑可以回复我~
#1

taylorfeng 提问者

了解了 ,谢谢
2016-10-19 回复 有任何疑惑可以回复我~

从这两段代码来看是没区别的,

区别在于如果你的try catch里如果有return 则第二段代码最后的输出走不到,而finally就能走到

finally的作用是在catch到异常后,可以做一些处理,例如数据库回滚事务关闭连接,或者直接关闭程序等等。

1 回复 有任何疑惑可以回复我~
#1

我是王先森灬

finally的作用是,不管try和catch走了那里,最后都会执行finally
2016-10-19 回复 有任何疑惑可以回复我~
#2

taylorfeng 提问者 回复 我是王先森灬

那就像你说的“finally可以在catch到异常后做一些处理”,那我直接用catch去处理不就好了吗,为啥还要多此一举用finally额
2016-10-19 回复 有任何疑惑可以回复我~
#3

姓白名黑 回复 taylorfeng 提问者

这样的话你岂不是每写一个catch块,都要写一遍处理,万一catch快很多,那就很浪费时间,浪费了效率
2017-02-27 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

关于finally语句块的作用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信