黑马程序员技术交流社区
标题:
关于异常的finally
[打印本页]
作者:
牧风
时间:
2016-8-4 01:00
标题:
关于异常的finally
.try{i=20;
return i;
}catch(){
}finally{i=100}
返回的i=20; 在return 处记录i然后finally 后边改变i的值只在finally范围内起作用,不会影响他的返回
作者:
ylca
时间:
2016-8-4 07:41
任何执行try 或者catch中的return语句之前,都会先执行finally语句,如果finally存在的话。
如果finally中有return语句,那么程序就return了,所以finally中的return是一定会被return的,
编译器把finally中的return实现为一个warning。
作者:
showJiang
时间:
2016-8-4 11:01
感觉你理解错了,顺序执行,先返回20,在修改了i的值,这时候修改,不会影响返回值
作者:
haizi004
时间:
2016-8-4 14:55
执行到return 语句时,先把return中的返回值存储起来,如果有finally代码块,就再执行finally代码块,执行完毕后,再把之前存储的值彻底返回到调用者那里;
作者:
崇尚技术的菜鸟
时间:
2016-8-4 19:17
这个不懂啊,还能再详细点说吗
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2