为什么有些Java异常无法被catch(Exception ex)
捕获?这段代码完全因未处理的异常而失败了。(Java版本1.4)
public static void main(String[] args) {
try {
//Code ...
} catch (Exception ex) {
System.err.println("Caught Exception");
ex.printStackTrace();
exitCode = app.FAILURE_EXIT_CODE;
}
finally {
app.shutdown();
}
System.exit(exitCode);
}
我遇到了一个 Exception in thread "main" java.lang.NoSuchMethodError
的错误。
但是这个有效。
public static void main(String[] args) {
int exitCode = app.SUCCESS_EXIT_CODE;
try {
//Code ...
} catch (java.lang.NoSuchMethodError mex){
System.err.println("Caught NoSuchMethodError");
mex.printStackTrace();
exitCode = app.FAILURE_EXIT_CODE;
} catch (Exception ex) {
System.err.println("Caught Exception");
ex.printStackTrace();
exitCode = app.FAILURE_EXIT_CODE;
}
finally {
app.shutdown();
}
System.exit(exitCode);
}
我遇到了 Caught NoSuchMethodError java.lang.NoSuchMethodError:
我以为捕获异常可以捕获所有异常?在Java中怎样能够捕获所有的异常?