Java中的Exception类和Error类有什么区别?

Exception类和Error类都是java.lang.Throwable类的子类,我们能够在运行时处理异常,但无法处理错误。

  • 异常是表示运行时发生的逻辑错误的对象,这些错误使JVM进入“歧义”状态。

  • 由JVM自动创建的用于表示这些运行时错误的对象称为异常。Error是Throwable类的子类,它指示合理的应用程序不应尝试捕获的严重问题。大多数此类错误是异常情况。

  • 如果发生异常,我们可以使用try and catch块来处理它。如果发生错误,我们将无法处理,程序执行将终止。

  • 在Exception中,我们有两种类型,一种是Checked Exception,另一种是Unchecked Exception,默认情况下Error是unchecked Exception。

  • 异常的类型为java.lang.Exception,而错误的类型为java.lang.Error。