【发布时间】:2018-05-30 03:11:22
【问题描述】:
我遇到了这个重新抛出的异常,并且对它甚至可以编译感到惊讶。
} catch(SomeException e) {
...
throw(e);
}
这个 throw() 和通常使用的有什么区别?...
} catch(SomeException e) {
...
throw e;
}
是否有任何指向其中记录的链接或选择一个而不是另一个的指导?
【问题讨论】:
-
他们是一样的
-
看起来只是多余的分组括号。
-
@eis 在这种情况下,上下文应该记录在异常本身中。虽然我们正在这样做,但无论您是否重新抛出,记录
e.getMessage()都是一个坏主意。 -
我删除了 log() 行,以免混淆问题。
-
@eis 您在谈论不在异常中的日志记录信息。我不反对,我说的是不记录异常然后抛出 same 异常。