有几个我经常在 JDK 中使用的异常,它们不支持异常链并且具有非常狭窄的描述,例如
-
NoSuchElementException
, "由Enumeration
的nextElement
方法抛出以指示枚举中不再有元素"(更新为"由各种访问器方法抛出以指示该元素JDK 8 中不存在被请求的内容”) -
ParseException
“表示在解析时意外出现错误。”
不应该在 JDK 之外使用此类异常吗?如果是这样,您会推荐什么替代异常(exception)?如果异常可以在 JDK 之外使用(没有代码味道),我怎样才能获得异常链接?
最佳答案
有链接能力,但不是通过构造函数参数给出的。
可以看看Throwable.initCause(Throwable cause)这可能符合您的目的,但我相信这些异常是专门为它们指示的目的而编码的。
对于 ParseException,这是特定于所讨论的操作,而 NoSuchElementException 是非常特定于数组或其他类型的线性集合之类的东西。
关于java - 不允许异常链接的 JDK 异常怎么了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23780523/