try catch finally执行的疑问
时间:2011-10-09
来源:互联网
public static void main(String[] args) {
System.out.println(test());//为什么打印 1
}
private static int test()
{
int i = 1;
try {
return i;
} catch (Exception e) {
}
finally
{
i++;
}
return 0;
}
}
作者: jtchan 发布时间: 2011-10-09
return语句的作用你体会下
作者: ioe_gaoyong 发布时间: 2011-10-09
作者: ggg957432 发布时间: 2011-10-09
我建议一般不要把return 放在finally里面,因为与finally一起用的时候会造成语义混乱,不太清晰,程序不容易维护。
作者: stonefeng 发布时间: 2011-10-09
public class TestTry {
public static void main(String[] args) {
System.out.println(test());//为什么打印 1
}
private static int test()
{
int i = 1;
try {
return i;
} catch (Exception e) {
}
……
i++;还是执行了。可以断点查看得到。
作者: jtchan 发布时间: 2011-10-09
作者: wuhuipengwhp 发布时间: 2011-10-09
作者: stonefeng 发布时间: 2011-10-09
2.当try或catch块中有return语句时,finally块中的语句仍会执行;
3.finally块中的语句是在函数返回前执行的,但函数返回值是在finally块中语句执行前确定的;
4.finally块中不能包含return语句。
楼主可以自己敲下代码验证下、顺便自己理解下。
作者: huangchenliang 发布时间: 2011-10-09
作者: fuwenhai 发布时间: 2011-10-10
作者: gukuitian 发布时间: 2011-10-10
作者: xflr123 发布时间: 2011-10-10
作者: zy609398738 发布时间: 2011-10-10
作者: huang_1106 发布时间: 2011-10-10
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28