8

作为一个实验,我决定在 Eclipse 调试器中启用以下断点:Throwable [Include Subclasses]: caught and uncaught. 然后我让我的代码(据我所知运行良好)在调试器下运行,当我的代码是据我所知,运行正常。

例如,这里只是我发现的一些引发异常的 Java 框架函数:URLClassLoader.findClassFileDirContext.lookupWebappClassLoader.findClassInternal.

这被认为是 Java 应用程序的正常行为吗?这是我应该研究的吗?据我所知,我的代码似乎运行良好。

4

2 回答 2

2

虽然以这种方式设计代码很糟糕(异常很慢,并且应该用于特殊情况),但 Bhesh Gurung 的评论是思考这个问题的正确方法。遵循你所依赖的代码规范,不要担心实现。

于 2012-10-18T17:40:44.277 回答
0

类加载期间抛出的异常是 Java 历史早期的遗留物,当时类加载被设计为使用它们作为一种方式来传达某些类加载器无法找到类。它现在不被认为是一个好的模式,但它仍然存在并且可能永远不会改变,因为它是 API 的一部分。没什么好害怕的。

于 2012-10-18T17:45:26.947 回答