五、异常
有catch 最后还有finally ,finally里面有return ,catch里面也有return;程序运行到catch里的return时,系统返回了一个值,
然后运行 finally 返回一个值。但是finally里返回值会覆盖 catch 里返回值。
public static int a() {
int i = 100;
try {
int a = 10 /0;
}catch (ArrayIndexOutOfBoundsException e) {
System.out.println("异常1");
return i++;
}catch (ArithmeticException e) {
System.out.println("异常2");
return i++;
} catch (Exception e) {
System.out.println("异常3");
return i++;
}finally {
i++;
System.out.println(i);
}
return i;
}
上面 system.out.println(a()); 会输出上面结果...?
原文:https://www.cnblogs.com/ccnsu/p/10494355.html