一、异常概述:
Java的异常机制主要依赖于try、catch、finally、throw和throws五个关键字。
Java常见的异常类之间的继承关系:
Java把所有的非正常情况分为两种,Error(错误)和Exception(异常),它们都继承Throwable父类。
(一)Error错误
Error错误,一般是指与 虚拟机相关的问题,如系统崩盘、虚拟机错误、动态链接失败等,这种错误无法恢复或不可能捕获,将导致应用程序中断。通常应用程序无法处理这些错误,因此应用程序不应该试图用catch块来捕获Error对象。在定义该方法时,也无需在其throws子句中声明该方法可能抛出Error及其任何子类。
(二)Exception异常
异常分为Checked异常和Runtime异常
1、Runtime异常(运行时异常)
在编译阶段无需处理。
此异常无需显式声明抛出,如果需要捕获,可以使用try...catch块。大部分时候推荐使用此异常。
2、Checked异常(检查异常)
即运行时异常以外的异常,在编译阶段必须处理。
Java程序必须显式处理Checke异常,如果没有对其进行处理,则在编译时会发生错误,无法通过编译。处理方式有两种:try…catch和throws。</