CoreJava/exp9/FinallyDemo2.java

29 lines
745 B
Java
Raw Normal View History

2024-05-09 09:10:51 +08:00
// 如下所示代码中如果catch里面有return语句请问finally的代码还会执行吗?
// 如果会请问是在return前还是return后。请使用debug方法查看程序中的变量a的取值是多少。
// 如果将最后一名return a;语句移到finally中那么又会是什么情况。
package exp9;
public class FinallyDemo2 {
public static void main(String[] args) {
System.out.println(getInt());
}
public static int getInt() {
int a = 10;
try {
System.out.println("try");
System.out.println(a / 0);
a = 20;
} catch (ArithmeticException e) {
System.out.println("catch");
a = 30;
return a;
} finally {
System.out.println("finial");
a = 40;
//return a;
}
return a;
}
}