问题
上下文异常与嵌套异常的优缺点是什么?
为什么我在乎
作为一个没有 Java 背景或不了解 Java 背景的开发人员,我偶然发现了一个可能的机会来更新开源项目的异常处理,但我希望确保我所做的更改是有益的。
有问题的项目是ddlutils。它目前使用 org.apache.commons.lang.exception ,其中指出:
“为以前的 Java 版本提供 JDK 1.4 样式的嵌套异常功能。”
Commons Lang的当前版本(撰写本文时为 3.1)使用 org.apache.commons.lang3.exception ,其中指出:
“包含带有上下文的异常的概念,即这样的异常将包含带有键和值的映射。这提供了一种在异常时以有用的形式将有价值的状态信息以有用的形式传递给调用进程的简单方法。”