finally代码块和异常注意事项_多异常的捕获处理

finally代码块

finally:有一些特定的代码无论异常是否发生,都需要执行。另外,因为异常会引发程序跳转,

导致有些语句执行不到。而finally就是解决这个问题,在finally代码块中存放的代码都是一定会被执行的.

注意:

  1.finally不能单独使用,必须和try一起使用

  2.finally一般用于资源释放(资源回收),无论程序是否出现异常,最后都要资源释放(IO)

 

 

 

异常注意事项_多异常的捕获处理

多个异常使用捕获又该如何处理呢

1、多个异常分别处理

 

 

 

 

 

 2.多个异常一次捕获,多次处理

一个try多个catch注意事项:

  catch里边定义的异常变量,如果有子父类关系,那么子类的异常变量必须写在上边,否则就会报错.

       try {
            int[] arr = {1,2,3};
            System.out.println(arr[3]);
            List<Integer> list = new ArrayList<>();
            System.out.println(list.get(3));
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println(e);
        }catch (IndexOutOfBoundsException e){
            System.out.println(e);
        }

 

 

 

 

 3.多个异常一次捕获一次处理

        try {
            int[] arr = {1,2,3};
            System.out.println(arr[3]);
            List<Integer> list = new ArrayList<>();
            System.out.println(list.get(3));
        }catch (Exception e){
            System.out.println(e);
        }

 

 

 

 

posted @ 2022-07-08 10:53  魔光领域  阅读(236)  评论(0编辑  收藏  举报