A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王运科 中级黑马   /  2012-3-31 09:34  /  2549 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

try { }里有一个return语句,那么在这个try后的finally { }里的code会不会被执行,什么时候被执行,在return前还是后?

6 个回复

倒序浏览
只有一种情况那就是system.exit()退出的时候finally不会执行
回复 使用道具 举报
肯定会执行,是在return 前,finally的代码块就是要无论在什么情况都必须执行的。

同时补充一下,finally代码块也可以有return,而且会覆盖其他的return。
回复 使用道具 举报
会执行,finally里面的代码是必须执行的,毕老师视频里有讲
回复 使用道具 举报
finally{}
必须要执行
有一种例外:关闭JVM---------遇到System.exit命令
回复 使用道具 举报
  会执行,finally { }的语句块,会在return之前执行的
回复 使用道具 举报
除非在try { }里有system.exit(),否则finally一定要执行。
在finally里如果有return会覆盖前面的return
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马