我在想Java如何处理以下情况
public static void main(String[] args) throws IndexOutOfBoundsException, CoordinateException, MissionException, SQLException, ParserConfigurationException {
try {
doSomething();
} catch (Exception e) {
e.printStackTrace();
}
}
在上述代码中,我声明了主函数可以抛出多个不同的异常,但在函数内部,我捕获了通用的 Exception 异常。我想知道 Java 在内部是如何处理这个问题的?也就是说,假设 doSomething() 抛出了一个 IndexOutOfBounds 异常,那么最后一个 catch (Exception e) {...} 块中的 e.printStackTrace() 会被调用吗?
我知道如果一个函数中抛出了未在 throws 区域声明过的异常,try/catch 语句将会处理它,但是对于在声明中提到的异常呢?
throw e;
吗? - E.S.