java异常体系
Thorwable类(表示可抛出)是所有异常和错误的超类,两个直接子类为Error和Exception,分别表示错误和异常。
其中异常类Exception又分为运行时异常(RuntimeException)和非运行时异常, 这两种异常有很大的区别,也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception
1、Error类是程序无法处理的错误,由jvm产生和抛出,遇到错误,jvm一般会选择终止线程
2、Exception类分为RuntimeException(运行时异常)和非运行时异常
RuntimeException:例如空指针异常,数组越界异常等,开发时应避免此类异常。也称为非受检异常。
非运行时异常:就是Exception类中除运行类异常之外的异常,如果不处理这类异常,程序都无法编译通过,例如io异常和sql异常。