package five; import java.util.Vector; public class five { public static void main(String[] args) { try { int a = args.length; System.out.println("\na = " + a); a = 22; int b = 42 / a; Vector<Integer> c = new Vector<Integer>(1); c.set(42, 99); } catch (ArithmeticException e) { System.out.println("发生了被0除: " + e); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("数组下标越界: " + e); } finally { System.out.println("finally 语句被执行"); } } }
时间: 2024-01-23 20:02:05 浏览: 59
java代码-import java.util.Scanner;
这是一个Java程序,包含一个名为five的public类,该类包含一个main方法。程序接受命令行参数,并尝试执行一些操作。
在main方法中,尝试获取命令行参数的长度,并将结果存储在变量a中。然后将a的值设置为22。接下来,将42除以a,并将结果存储在变量b中。同时,创建一个容量为1的整数向量c,并将其第42个元素设置为99。
在try块中,程序使用两个catch块捕获可能抛出的异常。如果发生被零除的算术异常,则会打印一条消息指示该异常已发生。如果发生数组下标越界异常,则会打印一条消息指示该异常已发生。
无论是否发生异常,finally块中的代码都将被执行,并打印一条消息指示该块已执行。
需要注意的是,由于向量c的容量为1,因此将其第42个元素设置为99将导致数组下标越界异常。因此,程序将会在这里抛出异常,并执行相应的catch块。
阅读全文