class ExMulti { static void procedure() { try { int c[]={1}; c[42]=99; } catch(ArrayIndexOutOfBoundsException e) { System.out.println("数组超越界限异常:"+e); } } public static void main(String args[]) { try { procedure(); int a=args.length; int b=42/a; System.out.println("b="+b); } catch(ArithmeticException e) { System.out.println("除0异常:"+e); } } }输出什么
时间: 2024-01-15 18:03:33 浏览: 122
dba.rar_closelyq1i_diehbl_java_oracle_oracle 存储过程
该程序的输出为:
```
数组超越界限异常:java.lang.ArrayIndexOutOfBoundsException: 42
```
原因是 `procedure()` 方法中的数组越界,导致抛出了 `ArrayIndexOutOfBoundsException` 异常。该异常被 `catch` 语句捕获并输出了错误信息。由于 `procedure()` 方法被 `try-catch` 包裹,程序不会因此终止。
然后,程序继续执行 `main()` 方法,由于没有传递参数,`args.length` 为 0,导致除以 0 的错误,抛出 `ArithmeticException` 异常。该异常也被 `catch` 语句捕获并输出了错误信息。
阅读全文