java:尝试最后阻止执行
我对尝试块中存在时的try-final执行感到困惑。在我的理解中,最终块将始终执行,即在返回调用方法之前。同时考虑以下简单代码:return;
public class TryCatchTest {
public static void main(String[] args){
System.out.println(test());
}
static int test(){
int x = 1;
try{
return x;
}
finally{
x = x + 1;
}
}
}
打印的结果实际上是 1。这是否意味着最终块未执行?任何人都可以帮我吗?