【发布时间】:2017-02-04 18:33:15
【问题描述】:
我有一些代码可能会同时引发检查异常和运行时异常。
我想捕获检查的异常并用运行时异常包装它。但是如果抛出 RuntimeException,我不必包装它,因为它已经是运行时异常了。
我的解决方案有点开销,而且不是“整洁”:
try {
// some code that can throw both checked and runtime exception
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {
throw new RuntimeException(e);
}
有什么更优雅的方法吗?
【问题讨论】:
-
就是这样。唯一的改进是一个高阶函数,它接受一个 lambda,它是
try主体并用这个逻辑包装它。你可以看看这个话题:stackoverflow.com/questions/31270759/… -
我相信这是更优雅的方式。
标签: java runtimeexception checked-exceptions