如何将未经检查的异常转换为Checked Exception和Java中的Versa异常

时间:2014-07-25 10:07:24

标签: java exception

在Java中,如何将未经检查的异常转换为 Checked Exception 和Java中的反Versa。

4 个答案:

答案 0 :(得分:3)

你无法转换。相反,你必须包含所需类型的新例外,例如转换为未选中:

throw new RuntimeException(checkedException);

或检查:

throw new Exception(uncheckedException);

(您可能希望选择更有意义/特定的异常类型)

答案 1 :(得分:0)

未经检查的例外是RuntimeException的子类,已检查的子类不是。因此,要转换一个例外,您必须更改其继承,然后修复编译器错误,因为从未声明或捕获了新的已检查异常。

答案 2 :(得分:0)

你无法转换它们。它们用于不同的目的。调用者需要处理已检查的异常,而未经检查或运行时异常通常不会被明确处理。

答案 3 :(得分:0)

我们假设您有两个例外类ExceptionAExceptionB;其中一个被检查,另一个未经检查。您想将ExceptionA转换为ExceptionB

假设ExceptionB有像

这样的构造函数
public ExceptionB(Exception e) {
    super(e);
}
你可以做点什么

catch (ExceptionA e) {
    throw new ExceptionB(e);
}

将一个异常类的对象包装在另一个异常类中。

相关问题