在 Java 中,try-finally 语句块用于处理异常,其中 finally 语句块中的代码无论 try 语句块中是否抛出异常都会被执行。

如果 try 语句块中包含 return 语句,那么在执行 return 语句之前,会先执行 finally 语句块中的代码,然后再执行 return 语句。

例如:

public static int test() {
    try {
        return 1;
    } finally {
        System.out.println('finally 执行了');
    }
}

执行 test() 方法后,输出结果为:

finally 执行了
1

这说明,即使 try 语句块中存在 return 语句,finally 语句块中的代码依然会执行,且在 return 语句之前执行。

总结:

  • 无论 try 语句块中是否有异常抛出,finally 语句块中的代码都会被执行。
  • 如果 try 语句块中包含 return 语句,那么在执行 return 语句前,会先执行 finally 语句块中的代码,然后再执行 return 语句。
Java try-finally 中的 return 语句行为

原文地址: https://www.cveoy.top/t/topic/oh22 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录