黑马程序员技术交流社区
标题:
调用下面的方法,得到的返回值是什么
[打印本页]
作者:
pan1564335
时间:
2015-9-25 14:55
标题:
调用下面的方法,得到的返回值是什么
1. public int getNum(){
2. try {
3. int a = 1/0;
4. return 1;
5. } catch (Exception e) {
6. return 2;
7. } finally{
8. return 3;
9. }
10. }
作者:
liufeibo
时间:
2015-9-25 16:44
调用这个方法得到的返回值是3
作者:
381890216
时间:
2015-9-25 16:55
public class Duoxiancheng{
public static void main(String[] args){
try {
int a = 1/0;
System.out.println(1);
} catch (Exception e) {
System.out.println(2);
} finally{
System.out.println(3);
}
}}
复制代码
输出
2
3
作者:
天涯莫名
时间:
2015-9-25 17:57
不是2么?
作者:
pan1564335
时间:
2015-11-24 09:09
天涯莫名 发表于 2015-9-25 17:57
不是2么?
应该是2,因为返回通道已经建立,值不会改变
作者:
Camwly
时间:
2015-11-24 09:38
怎么感觉是3的
作者:
李永佳
时间:
2015-11-24 09:50
确实是3呐
作者:
龙sama
时间:
2015-11-24 10:30
应该是 2 3吧。出现错误肯定返回2,然后再finally返回3.
作者:
javen_oi
时间:
2015-11-24 13:15
本帖最后由 javen_oi 于 2015-11-24 13:22 编辑
2啊,出现错误就会执行catch中的return,遇到return就返回了不会再执行了啊。finally就不会执行了,用eclipse写的话会直接提示你finall没有用的
作者:
萧未然
时间:
2015-11-24 20:21
异常处理语句中,finally语句块肯定是会执行的,不过会有一个不妨碍编译和运行的警告,什么意思?
作者:
yuxiangxin
时间:
2015-11-24 22:18
jdk1.7 返回3 C:\QQ截图20151124221733.png
作者:
隔壁马良
时间:
2015-11-24 22:25
这个是3吧
作者:
Tmac90301
时间:
2015-11-24 22:41
顿时我就懵逼了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2