正确答案
D
答案解析
A、try语句块中是可能出现异常的代码,在一个异常处理中是只出现一次的
B、finally语句块是指异常处理完后必须要执行的部分,这部分不是必须的,可以不写
C、throws用法:在方法头部分使用throws来声明这个方法可能回避的异常,当有异常抛出时会中断该方法,而异常被抛到这个方法的调用者那里,由调用者来处理这个异常。
D、catch语句块是用来捕获异常的,可以捕获各种不同的异常,因此是可以还有多个catch块的,每个块用于捕获不同的异常,来进行不同的处理。
接下来看个例子: public class Test {
public static void main(String[] args) throws Exception {
try {
int[] arr = new int[2];
arr[0] = 0;
arr[1] = 1;
arr[2] = 2;
} catch (IndexOutOfBoundsException e) {
System.err.println("IndexOutOfBoundsException: " + e.getMessage());
} catch (IllegalArgumentException e) {
System.err.println("IllegalArgumentException: " + e.getMessage());
throw new Exception();
} finally {
System.out.println("我会出现的!");
}
}
}