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

异常处理先执行try的return语句还是finally的语句

异常处理先执行try的return语句还是finally的语句

romygreat 2016-03-24 23:49:13
查看完整描述

3 回答

?
酱油fight

TA贡献12条经验 获得超2个赞

硕0给的答案应该就是正确的,如果我记得没错的话执行结果应该就像他说的那样,不过细节上和我印象中不一样。

我记得是这么个过程:

如果在try中有return,并有返回值(或对象),JVM会把这个值(或对象)暂存在一个地方(比如说一个Object里,具体细节忘记了),然后执行finally里的代码,这个时候如果finally里也有return,就会把这里的值(或方法)放到暂存的地方,也就是说替换了try里return的结果。finally执行完以后,程序return,值就是暂存的那个值。

查看完整回答
1 反对 回复 2016-03-25
?
rookie2maven

TA贡献278条经验 获得超76个赞

finally顾名思义最后执行且一定会执行,一般一些清空,关闭操作放在里面。


查看完整回答
反对 回复 2016-03-25
  • 3 回答
  • 0 关注
  • 1602 浏览

添加回答

举报

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