黑马程序员技术交流社区
标题:
经典面试题:用代码证明,在try中的finally一定会被执行
[打印本页]
作者:
小地瓜
时间:
2015-11-22 00:29
标题:
经典面试题:用代码证明,在try中的finally一定会被执行
请看题:
【题目】
用代码证明,在 try 中写了 return,后面又写了 finally,是先执行 return 还是先执行fianlly?
想到的亲们,可以发在后面,我们一起来讨论,建议先不要看我的噢,我写出来的是我个人的想法,大家有好的思维我们可以一起来讨论!
package com.itheima.day1120;
public class Demo_text03 {
public static void main(String[] args) {
/**
* 用代码证明,在 try 中写了 return,后面又写了 finally,是先执行 return 还是先执行fianlly?
* @author
* 答:return语句已经执行了再去执行finally语句,不过并没有直接返回,而是等finally 语句执行完了再返回结果。 * 证明代码如下:
* */
System.out.println(method());
}
public static int method(){
int[] arr = {1,2,3};
int c = 0;
try {
int b = arr[10];
} catch (Exception e) {
// TODO: handle exception
System.out.println("try 运行了");
return c = 3;
}finally{
System.out.println("我是finally");
if (c == 3) {
System.out.println("return 运行了");
}
}
return 0;
}
}
复制代码
可以发上来,我们一起来讨论
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2