Java try-finally 中的 return 语句行为
在 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 语句。
原文地址: https://www.cveoy.top/t/topic/oh22 著作权归作者所有。请勿转载和采集!