首先是面试题:
[Java] 纯文本查看 复制代码 public class Test2 {
public static void main(String[] args) {
int s = method();
System.out.println(s);
}
private static int method() {
int x = 0;
try {
x = 10;
System.out.println(1/0);
//Integer.parseInt("abc");
System.out.println("try里面如果出现异常,后面的语句不会执行");
return x;
} catch (ArithmeticException e) {
x = 20;
return x;
} catch (Exception e) {
x = 30;
return x;
} finally {
x = 40;
System.out.println("finally");
}
}
}
画图描述过程
然后就是需要注意两点:
①:try ... catch...只会执行其中一条路径
②:finally是在return的执行后,结束前执行完毕的,并且不会影响return要执行的内容
|