考虑以下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
块中的代码引发了多个已检查异常。我想要做的就是在发生异常时记录一条消息(带有一些自定义的消息字符串)。也就是说,我对所有异常使用相同的异常处理逻辑。
我觉得上面的代码看起来不太好(代码行数更多,可读性降低)。
有没有更好的方法来处理这种情况?
以下解决方案不是最佳实践,因此不建议使用(由CheckStyle提供)。
try{
// do something very bad
} catch (Exception e) {
handleException(e);
}