为什么我的自定义异常不会捕获RuntimeException?
class MyException extends Exception { }
public class ExceptionTest {
public static void main(String[] args) {
try {
doSomething();
} catch (MyException e) {
System.out.println("I should be here....");
}
}
static void doSomething() throws MyException {
int[] ages = new int[1];
ages[2] = 17; // It throws a RuntimeException (ArrayIndexOufOfBoundsException)
}
}
我会说,我应该得到这样的信息:“我应该在这里......” 因为我的异常“MyException”扩展了Exception类。 RuntimeException是Exception的子类。
为什么MyException没有捕获RuntimeException?
提前谢谢你!