【面试:Java异常】
说说Java中异常的分类
异常对象都是派生于Throwable 类的一个实例:
- Error:类层次结构描述了Java 运行时系统的内部错误和资源耗尽错误。
- 应用程序不应该抛出这种类型的对象。
- Exception:
- RuntimeException:由程序错误导致的异常属于RuntimeException;
- 派生于 RuntimeException 的异常包括:
- 错误的类型转换;
- 数组访问越界;
- 访问 null 指针;
- 不是派生于 RuntimeException 的异常包括:
- 试图在文件尾部后面读取数据;
- 试图打开一个不存在的文件;
- 试图根据给定的字符串查找 Class 对象,而这个字符串表示的类并不存在;
- 其他异常:由于像 I/O 错误这类问题导致的异常;
- RuntimeException:由程序错误导致的异常属于RuntimeException;
非受查异常 与 受查异常:
- 非受查(unchecked) :异常派生于Error 类或RuntimeException 类的所有异常称为;
- 受查(checked) :所有其他的异常称为。