异常类相关

异常类都有哪些?

思考:

  • 异常的基类是Throwable
  • 从Throwable基类又有两个继承与他的子类,Error和Exception
    • Exception又有两个继承与他的子类:RuntimeException和non-RuntimeException
  • 那么其实现类有:
    • Error:StackOverflowError(栈溢出错误),OutofMemoryError(内存溢出错误)
    • RuntimeException:ClassNotFoundException(类未发现)、NullPointerException(空指针异常)、ArrayOutofBoundException(数组越界)、UnknowTypeException(未发现的类型异常)、Missing ResourceException(资源未找到)、IllegalArgumentException(方法参数错误)、ClassCastException(数据转换异常)
    • IOException、SQLException...

答案

  • RuntimeException:ClassNotFoundExcption、Null PointerException、ArrayOutofBoundsException、MissingResourcesException....

Exception 和 Error什么区别?

思考:

  • 从是否是异常的角度:
    • Error是一个错误,不能算是异常
    • Exception是一个异常
  • 从是否通过编译的角度
    • Error:JVM层次的错误,属于不可修复的严重错误,在编译之前就会爆出
    • Exception:是在编译层次的错误,可以被捕捉和修复。

回答:

  • Error是一个错误,本质上来讲不能算是异常。Error是在JVM层次下的错误,编译的时候出现的系统错误,无法被修复,就比如StackOverFlowError
  • Exception是一个异常,是在编译之后程序可以恢复的异常。可以被编译器所捕获。
posted @ 2021-03-04 01:40  一个汉服程序员苏木  阅读(56)  评论(0)    收藏  举报