异常注意事项
多个异常使用捕获又该如果处理
1.多个异常分别处理
2.多个异常一次捕获 多次处理
3.多个异常一次捕获一次处理
格式:
try{ 编写可能会出现异常的代码 }catch(异常类型A e){当try中出现A类型异常 就用该catch来捕获
处理异常的代码
}catch(异常类型B e){当try中出现B类型异常 就用该catch来捕获
处理异常的代码
}
多个异常分别处理代码:
public static void main(String[] args) {
int[] arr={1,2,3};
try{
System.out.println(arr[3]);
}catch (ArrayIndexOutOfBoundsException e){
System.out.println("没有这个索引");
}
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
try {
System.out.println(list.get(3));
}catch (IndexOutOfBoundsException e) {
System.out.println("集合中没有这个索引");
}
}
多个异常一次捕获 多次处理代码:
因为它只有一个try并不是多个 所以只会出现多个 如果将数组和集合换一个位置就会有不一样的结果
代码:
多个异常一次捕获一次处理
代码:
public static void main(String[] args) {
int[] arr={1,2,3};
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
try{
System.out.println(list.get(3));
System.out.println(arr[3]);
}catch (Exception e) {
System.out.println("错误");
}
}