在过去,我会使用以下方法阅读大量代码:
public Object doSomething() throws Throwable {
...
}
这样做是常见的做法吗?
有什么优点和缺点?
throws Trowable
在我看来就像是完成异常事务的“Agent Orange”方式
编辑
在方法中处理预期的异常
抛出意外异常(一一)
不关心错误
这是要走的路吗?
最佳答案
你不应该抛出 Throwable
。原因如下。
Throwable 是可以抛出的事物层次结构的顶部,由 Exceptions
和 Errors
组成。由于 Errors
根据定义是由不可挽救的条件引起的,因此将它们包含在您的方法声明中是没有意义的。这样就只剩下Exception
了。
你应该用 throws Exception
来声明你的方法。
请注意,throws
的范围越窄越好。
如果您的方法不生成异常,而是调用其他声明为 throws Exception
的代码并且您想要渗透调用堆栈的异常。
如果你的方法是产生异常,那么声明一个更窄的范围,例如throws IOException, MyProcessingException
等
关于java - 是 "throws Throwable"好的做法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12564428/