目录
【概念】:
是指处理程序运行时出现的任何意外或者异常情况的方法。是在错误未出现之前所采取的措施。
【分类】:
- Error:称为错误,由java虚拟机生成并抛出,包括动态链接失败、虚拟机错误等,程序对其不做处理。
- Exception: 所以异常类的父类,其子类对应了各种各种的可能出现的异常事件,一般许哟啊用户显示的声明或者捕获。
Runtime Exception: 这是一类比较特殊的异常,例如:被0除、数组下标超过范围等等,其产生比较频繁,处理麻烦,如果显示的声明或者捕获将会对程序可读性或者运行效率有很大的映像。因此由系统自动检测并由他们交给缺省的异常处理程序。
【捕获和处理】:
try语句:
- 这个语句指定了一段代码,该段代码就是一次捕获并且处理例外的范围。
- 在执行的过程中,该段代码可能产生抛出一种或几种类型的异常对象,他后面的catch语句要分别对这些异常做出相应的处理。
- 如果没有例外产生,所有的catch代码段都被略过不执行;
catch语句:
- 在catch语句块中是对异常进行处理的代码,每个try语句块可以伴随着一个或者多个catch,用于处理可能产生的不同类型的异常现象。
- 在catch中声明的异常现象(catch(exception e))封装了异常事件发生的信息,在catch语句块中可以使用这个对象的一些方法捕获这些信息。
finlly语句:
- 为异常处理提供了一个统一的接口,是的在控制流程转到程序的其他部分以前,能够对程序的状态做统一的管理。
- 无论try所指定的程序块是否抛出异常,finally 所指定的代码都要被执行。
声明并抛出异常:
注意:当有重写方法需要抛出与原来方法抛出异常类型一致的异常或者不抛异常。
例如: