注意闭坑,面试问到这个问题,一般就......
在try-catch-finally语句中,return语句和finally块的执行顺序是:return语句会首先执行,然后执行finally块,最后退出方法。
java
public int method() {
try {
return 1;
} finally {
System.out.println("finally");
}
}
程序中的return有两个作用,一是返回给方法1,二是退出程序。当执行到此时会先执行return的返回值功能,然后执行finally,最后执行return的退出程序的功能!!
所以记住:无论try块中是否有return语句,finally块都会被执行。这保证了finally块中的代码一定会被执行,用于释放锁定的资源等操作。