try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
会被执行,在运行完finally代码后才返回
如下测试代码
public class Main {
public static void main(String[] args) {
int ruslt = getRuslt();
System.out.println("得到结果");
}
public static int getRuslt(){
try{
return 1;
}finally{
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("这里是Finally");
}
}
}