我对链异常有疑问
try{ } catch(Exception e) { throw new SomeException(); }
如果我喜欢这样 我的 Eclipse 会在 throw new SomeException(); 行提示错误 声明“未处理的异常” 我必须放一些类似的东西
try{ } catch(Exception e) {
try{ throw new SomeException(); } catch(Exception e){}
}
为什么一定要这样做 因为我读过的教程.example http://java.sys-con.com/node/36579 ,不必这样做
最佳答案
如果异常是 checked exception,您需要声明该方法抛出
另一个异常。 。
(“非受检异常类是 RuntimeException 类及其子类,以及 Error 类及其子类。所有其他异常类都是受检异常类。” -- Java Language Specification, Second Edition, Section 11.2 )
例如,而不是:
void someMethod {
try {
// Do something that raises an Exception.
} catch (Exception e) {
throw new SomeException(); // Compile error.
}
}
需要在方法声明中添加抛出
:
void someMethod throws SomeException {
try {
// Do something that raises an Exception.
} catch (Exception e) {
throw new SomeException(); // No problem.
}
}
关于java链异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/942849/