public static void main(String[] args) {
System.out.println(Test.test());
}
public static int test() {
int a = 1;
try {
System.out.println(a++);
return ++a;
} catch (Exception e) {
e.printStackTrace();
} finally {
System.out.println(++a);
System.out.println(a++);
}
return a;
}
打印结果为1,4,4,3。JVM在return之前会把返回值存到临时内存中,finally的处理不影响返回值。
本文探讨了Java中异常处理的finally块对方法返回值的影响,通过具体代码示例展示了在return语句后finally块的执行流程,以及其如何不影响实际的返回值。
6675





