我正在尝试理解 Java 中的 Error
类。
我很了解Exception
类,但是找不到Error
类的代码示例。我试过搜索网络和 java.sun 网站,但没有找到任何有用的信息来帮助我更好地理解这一点。
我如何在程序中使用 Error
类以及我们必须在哪里使用它?
最佳答案
您没有在代码中使用 Error
。
Error
是一种特定的 Throwable
,就像 Exception
一样。
-
Throwable
是定义所有可以抛出的东西的基类。 -
Exception
是常见的情况。它是关于在你的程序执行过程中发生的问题。-
RuntimeException
是一种特殊情况:它是未检查的(即它不需要通过方法声明并且编译器不会强制您捕获它)。
-
-
Error
是“罕见”情况:它表示超出通常应用程序控制范围的问题:JVM 错误、内存不足、验证字节码的问题:这些是您不应该处理的事情,因为如果它们发生事情已经很糟糕了,你的代码不太可能能够理智地处理它。
您不应尝试纠正导致错误
的情况。您可能想要捕获它以便记录它然后重新抛出它(请参阅 ThreadDeath
的 JavaDoc 以了解为什么需要重新抛出它的示例(感谢 @krock 的提示))。
没有其他理由抛出任何 Error
(即不要自己创建一个 Error
并抛出它,如果你认为你想这样做,请改用 Exception
或 RuntimeException
。
关于java - Java 中的错误类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5217712/