异常类都有哪些?
思考:
- 异常的基类是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)
评论()
收藏
举报