Java方法中,在try中return之后,后面的finally还执行吗?
测试代码如下:
public int print(){
try
{
System.out.println("try");
return 1;
}
catch(Exception e){
return 0;
}
finally{
System.out.println("finally");
}
}
直接看结果:
try
finally
原因:
finally语句在return之前执行。
如果在finally中再加上一个return呢?
测试代码如下:
public class Main {
public static void main(String[] args) {
System.out.println(print());
}
public static int print(){
try
{
System.out.println("try");
return 1;
}
catch(Exception e){
return 0;
}
finally{
System.out.println("finally");
return 2;
}
}
}
结果如下:
try
finally
2
深入理解:
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-12-20 18:17:57