2.异常的分类
异常主要分为:错误、一般性异常(受控异常)、运行期异常(非受控异常)
错误:Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。一般不编写针对性的代码进行处理。如果应用程序出现了Error,那么将无法恢复,只能重新启动应用程序,最典型的Error 的异常是:OutOfMemoryError。
受控异常(编译时异常):是指编译器要求必须处置的异常,即程序在运行时由于
外界因素造成的一般性异常。编译器要求java程序必须捕获或声明所有编译时异常。对于这类异常,如果程序不处理,可能会带来意想不到的结果。出现了这种异常必须显示的处理,不显示处理java 程序将无法编译通过。
非受控异常(运行时异常):是指编译器不要求强制处置的异常,一般是指编程时的
逻辑错误,是程序员应该积极避免其出现的异常。java.lang.RuntimeException类及它的子类都是运行时异常。对于这类异常,可以不作处理,因为这类异常很普遍,若全处理可能会对程序的可读性和运行效率产生影响。此种异常可以不用显示的处理,例如被0 除异常,java 没有要求我们一定要处理。