![]() ![]() |
|
二级Java考试辅导教程:4.2例外的处理 | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:42:44 文章录入:杜斌 责任编辑:杜斌 | |
|
|
java语言中有两种例外处理机制:捕获例外和声明抛弃例外。下面我们做详细介绍。 4.2.1 捕获例外 捕获例外是通过try-catch-finally语句实现的。 try{ try 捕获例外的第一步是用try{…}选定捕获例外的范围,由try所限定的代码块中的语句在执行过程中可能会生成例外对象并抛弃。来源:www.examda.com catch 每个try代码块可以伴随一个或多个catch语句,用于处理try代码块中所生成的例外事件。catch语句只需要一个形式参数指明它所能够捕获的例外类型,这个类必须是Throwable的子类,运行时系统通过参数值把被抛弃的例外对象传递给catch块。 在catch块中是对例外对象进行处理的代码,与访问其它对象一样,可以访问一个例外对象的变量或调用它的方法。getMessage( )是类Throwable所提供的方法,用来得到有关异常事件的信息,类Throwable还提供了方法printStackTrace( )用来跟踪异常事件发生时执行堆栈的内容。例如: try{ catch 语句的顺序: finally 捕获例外的最后一步是通过finally语句为例外处理提供一个统一的出口,使得在控制流转到程序的其它部分以前,能够对程序的状态作统一的管理。不论在try代码块中是否发生了异常事件,finally块中的语句都会被执行。
4.2.2 声明抛弃例外 1.声明抛弃例外 如果在一个方法中生成了一个例外,但是这一方法并不确切地知道该如何对这一异常事件进行处理,这时,一个方法就应该声明抛弃例外,使得例外对象可以从调用栈向后传播,直到有合适的方法捕获它为止。 声明抛弃例外是在一个方法声明中的throws子句中指明的。例如: public int read () throws IOException{ throws子句中同时可以指明多个例外,之间由逗号隔开。例如: public static void main(String args[]) throws
抛出例外就是产生例外对象的过程,首先要生成例外对象,例外或者由虚拟机生成,或者由某些类的实例生成,也可以在程序中生成。在方法中,抛出例外对象是通过throw语句实现的。 例如: 可以抛出的例外必须是Throwable或其子类的实例。下面的语句在编译时将会产生语法错误: |
|
![]() ![]() |