黑马程序员技术交流社区

标题: 异常问题 [打印本页]

作者: 余耀明    时间: 2012-5-12 22:20
标题: 异常问题
try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
作者: 孙宇晨    时间: 2012-5-12 22:34
根据java规范:在try-catch-finally中,如果try-finally或者catch-finally中都有return,则两个return语句都执行并且最终
返回到调用者那里的是finally中return的值;而如果finally中没有return,则理所当然的返回的是try或者catch中return的值,但是
finally中的代码是必须要执行的,而且是在return前执行,除非碰到exit()。
作者: 钟成军    时间: 2012-5-13 00:01
finally里的语句总是会被执行的
作者: 付左军    时间: 2012-5-13 10:43
final,不管你的异常是否处理,都会被执行的
作者: 刘克方    时间: 2012-5-13 10:55

finally程序块内语句主要用来释放一些资源,如数据库的连接,流的关闭;所以try或catch块中有无return语句,finally里的语句都会执行。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2