AvA 异常的概念 o和传统的方法比较异常的优点 1)把错误代码从常规代码中分离出来 2)把错误传播给调用堆栈 按错误类型和错误差别分组 4)系统提供了对于一些无法预测的错误的捕获和处理 5)克服了传统方法的错误信息有限的问题 method4 产生异常 class ExcepTest method3传 i public void main(String argsI i int b=0; int a; method2|递 try( a=4/b; 3 method1 System. out. println(“ divided by0”) JAVA }
异常的概念 和传统的方法比较异常的优点: 1) 把错误代码从常规代码中分离出来 2) 把错误传播给调用堆栈 3) 按错误类型和错误差别分组 4) 系统提供了对于一些无法预测的错误的捕获和处理 5) 克服了传统方法的错误信息有限的问题 method1 method2 method3 method4 产生异常 传 递 处理异常 class ExcepTest { public void main(String args[]) { int b=0; int a; try { a=4/b;} catch(ArithmeticException e) { System.out.println(“divided by 0”); } }}
Java异常继承关系图 只有它的后 AVA 代才可以作 Throwable 为一个异常 被抛出 Error Exception 各种错误子类 Runtime Non Runtime Exception Exception 由java虚拟机 各种运行 各种非运行 生成并抛出 异常子类异常子类 一般不作处理 不应捕获的异常 可以捕获的异常 JAVA
Java异常继承关系图 Throwable Error Exception Runtime 各种错误子类 Exception Non_Runtime Exception 各种运行 异常子类 各种非运行 异常子类 只有它的后 代才可以作 为一个异常 被抛出 由java虚拟机 生成并抛出。 一般不作处理 不应捕获的异常 可以捕获的异常
AvA 异常的分类 所有的异常都起源于 growable,但是 Throwable立即被分为两个分支。即使用 子类异常中的一个来描述任何特殊异常。 O Error分支用于java运行时系统的内部错误 和资源耗尽错误,它表示恢复不是不可能 但很困难的情况下的一种严重问题。比如 说内存溢出。 管图终止程序以外基本上无能为)9 当一个这种内部错误发生时,除了通知用 这种情况较为少见。 JAVA
异常的分类 所有的异常都起源于Throwable,但是 Throwable立即被分为两个分支。即使用 子类异常中的一个来描述任何特殊异常。 Error分支用于java运行时系统的内部错误 和资源耗尽错误,它表示恢复不是不可能 但很困难的情况下的一种严重问题。比如 说内存溢出。 当一个这种内部错误发生时,除了通知用 户并试图终止程序以外基本上无能为力。 这种情况较为少见