throws与throw的应用
在开发者弄个,像try..catch...finally, throws,throw联合使用的情况比较多,
例如:现在要设计一个相除的方法,但是要求必须打印“计算开始”信息,“计算结束信息”如果有异常则肯定交给被调用处处理,
范例:
package test2;
class Math1 {
public int dev(int i, int j) throws Exception {// 方法可以不处理异常
System.out.println("*****计算开始********");
int temp = 0;// 声明整形变量
try {
temp = i / j; // 如果产生异常,则执行catch
} catch (Exception e) {// 捕获异常
throw e;// 把异常交给被调用处
} finally {// 不管是否产生异常都执行此代码
System.out.println("*******计算结束*******");
}
return temp;
}
}
public class ThrowsDemo02 {
public static void main(String[] args) {
Math1 m = new Math1();// 实例化Math对象
try {
System.out.println("除法操作:" + m.dev(10, 0));
} catch (Exception e) {// 进行异常的捕捉
System.out.println("异常产生:" + e);
}
}
}
结果:
*****计算开始********
*******计算结束*******
异常产生:java.lang.ArithmeticException: / by zero
浙公网安备 33010602011771号