Java 编程中的异常传播
java 8object oriented programmingprogramming
异常传播是指异常从一个 catch 块流向另一个 catch 块。以下是规则 −
如果受保护的代码中发生异常,则将异常抛出到列表中的第一个 catch 块。
如果抛出的异常的数据类型与 ExceptionType1 匹配,则会在那里捕获它。
如果不匹配,则将异常传递到第二个 catch 语句。
这将持续到异常被捕获或通过所有捕获为止。
在 end case 中,当前方法停止执行,并将异常抛出到调用堆栈上的前一个方法,此过程称为异常传播。
示例
public class Tester { public static void main(String args[]) { int a,b; try { a = Integer.parseInt(args[0]); b = Integer.parseInt(args[1]); int c = a/b; System.out.println(c); } catch(ArrayIndexOutOfBoundsException ex) { System.out.println("请在运行程序时传递参数"); } catch(NumberFormatException e) { System.out.println("字符串无法转换为整数"); } catch(ArithmeticException e1) { System.out.println("无法除以零"); }finally { System.out.println("程序已终止"); } } }
输出
请在运行程序时传递参数 程序已终止