因此,如果我想添加一个可抛出的原因,我的自定义异常:
class MyException extends Exception {
public MyException(String message, Throwable cause) {
super(message, cause);
}
}
究竟是什么原因并存在包含所有原因的列表,还是我还可以创建自定义列表?一个带异常处理的代码示例会很好。
您可以使用它来链接异常。
如果你的代码捕获ExceptionA
类型的异常,并且catch子句抛出ExcpetionB
类型的异常,你可以将ExceptionA
的实例传递给ExcpetionB
的构造函数,因此任何捕获ExcpetionB
的代码都能够发现ExcpetionB
被抛出为ExceptionA
被抛出的结果。
public void someMethod() throws ExcpetionB {
try {
// some code that may throw ExceptionA
}
catch (ExceptionA excA) {
throw new ExceptionB ("some message", excA);
}
}