java 检查型异常,非检查型异常,运行时异常,非运行时异常及错误之间的关系

java 检查型异常,非检查型异常,运行时异常,非运行时异常及错误之间的关系_第1张图片

java的非正常情况可分为:异常(exception)和错误(error)

 

错误(error)

它指的是一个合理的应用程序不能截获的严重的问题。大多数都是反常的情况。错误是很难处理的,一般的开发人员是无法处理这些错误的,比如内存溢出。 在Java中用错误类来表示错误,不同的错误类代表了不同的错误。 但是在Java中所有的错误都有一个基类,叫做Error。

异常(exception)

可以被捕获处理的。

检查型异常(checked exception) ——也就是 非运行时异常

除了RuntimeException与其子类,以及error   例如有: IOException及其子类、SQLException

这类异常在运行前就会被检查,并且编译器要求必须处理,我们可以通过 try...catch或throws来解决,否则无法编译通过。

 

非检查型异常(unchecked exception)——与检查型异常相对

运行时异常(RuntimeException)与其子类,以及error,这类错误编译器不会检查,也不要求处理,通常会用throw抛出

 

运行时异常(RuntimeException)

运行时异常、非运行时异常都仅在Exception范围内,例如NullPointerException(空指针异常)、IndexOutOfBoundsException(下标越界异常)等,是可被避免的,这类错误编译器不会检查,也不要求处理。

 

 

 

 

你可能感兴趣的:(java 检查型异常,非检查型异常,运行时异常,非运行时异常及错误之间的关系)