我们知道,如果发生任何错误或任何未经检查的异常,那么我们的程序将停止,那么它们之间有什么区别?
总之:
您可以,并且可能应该从异常中恢复。
您可以(但不应)从错误中恢复。
来自错误 Javadoc:
Error 是 Throwable 的一个子类,它指示合理的应用程序不应尝试捕获的严重问题。大多数此类错误都是异常情况。ThreadDeath 错误虽然是“正常”情况,但也是 Error 的子类,因为大多数应用程序不应尝试捕获它。
与异常 Javadoc 的对比
类 Exception 及其子类是 Throwable 的一种形式,它指示合理的应用程序可能想要捕获的条件。
因此,即使不需要捕获未经检查的异常,您也可能需要这样做。一个错误,你不想抓住。