java学习之try catch finally中的return
来源:互联网 发布:linux根目录设置多大 编辑:程序博客网 时间:2024/05/18 12:29
首先,贴下测试代码
public class Test {
public static void main(String[] args) throws Exception {
System.out.print(test(1));
}
public static String test(int i){
int k=0;
try {
int j=5/i;
k=1;
// return "try"+k;
} catch (Exceptione) {
// TODO: handle exception
k=2;
return"catch"+k;
}
finally{
k=3;
// return "finally"+k;
}
k=4;
return""+k;
}
首先明确,return能出现在4个地方,即try中、catch中、finally中以及finally外,当try中或finally中出现了return,则finally就不能出现,否则变异报错,反之亦然。
其次,我们来分两种情况,一种是有异常情况,一种是无异常情况
一、无异常情况
1⃣️try中有return,finally中也有:最终返回结果是执行finally中的return,如上面代码将返回finally3
2⃣️try中有return,finally中没有,但finally中有影响try中的返回:其实并不影响,因为try早已把返回值存入栈中,如上面代码将返回try1,而不是try3
3⃣️try中没有return,finally中有:当然执行finally中的return啦
二、有异常情况
1⃣️finally外有return,catch中也有:其实没多大意义,因为finally外的逻辑压根不会执行到,当然是执行catch中的return
2⃣️try中有无return不重要,不影响
catch中有return,finally中也有:最终返回结果是执行finally中的return,如上面代码将返回finally3
catch中有return, finally中没有,但finally中有影响catch中的返回:其实并不影响,因为catch早已把返回值存入栈中,如上面代码将返回catch2,而不是catch3
catch中没有return,finally中有:当然执行finally中的return啦
- java学习之try catch finally中的return
- java基础之try,catch,finally中的return
- java try catch finally中的return问题
- Java中try-catch-finally中的return
- try...catch...finally中的return
- try...catch...finally中的return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- return语句在Java的Try Catch Finally中的行为
- Java中的try-catch-finally-return的执行顺序
- 关于java中的try-catch-finally语句和return
- JAVA初窥:try、catch、finally语句块中的return语句
- 关于java中的try-catch-finally语句和return
- 关于java中的try-catch-finally语句和return
- 路由器---更改交换机
- 《c primer plus》编程练习回顾-第十一章(上)
- java基础入门-你不知道的string-不可改变性与编译器优化
- 2015年第六届蓝桥杯本科B组C++省赛个人题解
- nagios插件之系统打开文件数监控
- java学习之try catch finally中的return
- 第三章5 找出5个学生中成绩最高者
- CSS
- Cordova 3.x 基础(9) -- UI框架jQuery Mobile
- 构造函数有没有返回值?
- HDU-OJ---N皇后问题(DFS)
- 原始套接字之PING(4)
- POJ 1743 Musical Theme(后缀数组)
- [Practical.Vim(2012.9)].Drew.Neil.Tip98 学习摘要