在 catch 块内抛出的异常 - 它会再次被捕获吗?
这似乎是一个编程101问题,我原以为我知道答案,但现在发现自己需要仔细检查。在下面的这段代码中,在第一个 catch 块中引发的异常是否会被下面的常规 Exception catch 块捕获?
try {
// Do something
} catch(IOException e) {
throw new ApplicationException("Problem connecting to server");
} catch(Exception e) {
// Will the ApplicationException be caught here?
}
我一直以为答案是否定的,但现在我有一些奇怪的行为可能是由此引起的。对于大多数语言来说,答案可能是一样的,但我使用的是Java。