try catch finally中的return
时间: 2023-08-09 17:07:17 浏览: 99
try-catch-finally-return-in-finally.rar_return
在 try-catch-finally 块中,如果在 try 或 catch 块中遇到 return 语句,它会立即退出该块并返回相应的值。然后,如果有 finally 块,它将在返回之前执行。
如果在 try 块中遇到 return 语句,那么 finally 块将在返回之前执行。如果在 catch 块中遇到 return 语句,同样地,finally 块也会在返回之前执行。
无论是否有异常被抛出,finally 块中的代码总是会被执行。如果 finally 块中也有 return 语句,它将覆盖之前的 return 语句返回相应的值。
下面是一个示例代码片段,演示了 try-catch-finally 中的 return 行为:
```
public class Main {
public static void main(String[] args) {
System.out.println(test());
}
public static int test() {
try {
System.out.println("Inside try block");
return 1;
} catch (Exception e) {
System.out.println("Inside catch block");
return 2;
} finally {
System.out.println("Inside finally block");
return 3;
}
}
}
```
输出结果为:
```
Inside try block
Inside finally block
3
```
在这个例子中,无论 try 或 catch 块中的 return 语句返回什么值,最终都会被 finally 块中的 return 3 覆盖。
阅读全文