Java Exception和Error的区别

Java Exception和Error的区别

异常和错误都是Throwable类的子类。错误指的是由于系统资源不足而出现的问题,我们的应用程序不应该捕获这些类型的问题。错误的一些示例包括系统崩溃错误和内存溢出错误。错误主要发生在运行时,它们属于未检查类型。

异常会在运行时和编译时可能发生的问题,主要出现在开发人员编写的代码中。异常分为两个类别,分别是已检查异常和未检查异常。

序号 键值 错误 异常
1 类型 分类为未检查的类型 分类为已检查和未检查的类型
2 属于java.lang.error 属于java.lang.Exception
3 可恢复/不可恢复 不可恢复 可恢复
4 不能在编译时发生 可以在运行时和编译时都发生
5 示例 OutOfMemoryError ,IOError NullPointerException , SqlException

错误示例

public class ErrorExample {
   public static void main(String[] args){
      recursiveMethod(10)
   }
   public static void recursiveMethod(int i){
      while(i!=0){
         i=i+1;
         recursiveMethod(i);
      }
   }
}

输出

Exception in thread "main" java.lang.StackOverflowError
   at ErrorExample.ErrorExample(Main.java:42)

异常示例

public class ExceptionExample {
   public static void main(String[] args){
      int x = 100;
      int y = 0;
      int z = x / y;
   }
}

输出

java.lang.ArithmeticException: / by zero
   at ExceptionExample.main(ExceptionExample.java:7)

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程