考虑以下 Java 代码:
try{
// do something
// this piece of code throws several checked exceptions.
} catch (IllegalArgumentException e) {
handleException(e);
} catch (IllegalAccessException e) {
handleException(e);
} catch (InvocationTargetException e) {
handleException(e);
} catch (InstantiationException e) {
handleException(e);
} catch (NoSuchMethodException e) {
handleException(e);
} catch (IOException e) {
handleException(e);
} catch (NoSuchFieldException e) {
handleException(e);
}
块中的代码try
抛出了几个检查异常。我要做的就是在发生异常时记录一条消息(使用一些自定义消息字符串)。即我的异常处理逻辑对于所有异常都是相同的。
我觉得上面的代码看起来不太好(更多的 LOC 和降低的可读性)。
有没有更好的方法来处理这种情况?
以下解决方案不是最佳实践,因此不推荐(按 Check 样式)。
try{
// do something very bad
} catch (Exception e) {
handleException(e);
}