try...catch的方式处理多个异常

/**
         * try...catch的方式处理多个异常
         * JDK7以后处理多个异常的方式及注意事项
         *
         * 安卓,客户端开发,如何处理异常?try{}catch(Exception e){}
         * ee,服务端开发,一般都是底层开发,从底层向上抛
         *
         * try后面如果跟多个catch,那么小的异常放前面,大的异常放后面,根据多态的原理,如果大的放前面,就会将所有的子类对象接收
         * 后面的catch就没有意义了
         */
        //demo1();
        int a = 10;
        int b = 0;
        int[] arr = { 11, 22, 33, 44, 55 };
        //JDK7如何处理多个异常
        try {
            System.out.println(a / b);
            System.out.println(arr[10]);
        }
             catch (ArithmeticException | ArrayIndexOutOfBoundsException e) {
                System.out.println("出错了");
              };
        System.out.println("out");
    }
    

    public static void demo1() {
        int a = 10;
        int b = 0;
        int[] arr = { 11, 22, 33, 44, 55 };
        try {
            System.out.println(a / b);
            System.out.println(arr[10]);
            arr = null;
            System.out.println(arr[1]);
        }
             catch (ArithmeticException e) { System.out.println("除数为0");
              }catch (ArrayIndexOutOfBoundsException e) {
              System.out.println("索引越界"); }
             catch (Exception e) {
            System.out.println("出错了");
        }
        ;
        System.out.println("out");
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
try...catch是一种异常处理机制,在代码中可以用来捕获并处理可能发生的异常。它的基本格式是: try { // 可能会产生异常的代码 } catch (ExceptionType exceptionVariable) { // 异常处理代码 } 在try块中放置可能会抛出异常的代码,如果这部分代码发生异常,程序会立即跳转到与异常类型相匹配的catch块中执行异常处理代码。catch块中的代码用于处理异常,并采取相应的措施,比如打印错误信息、修复错误或者进行其他必要的操作。 try...catch的好处是,它可以保证即使有异常发生,程序也不会中断执行,而是会继续执行其他的代码。这对于确保程序的稳定性和可靠性非常重要。 在使用多个catch处理异常时,需要注意一些规则。首先,多个catch块中的异常类型不能相同,否则会导致编译错误。其次,如果多个catch块中的异常类型存在继承关系,子类异常应该在上面的catch块中处理,父类异常应该在下面的catch块中处理。最后,当发生异常时,多个catch块只会执行一个,按照从上到下的顺序进行匹配。 与try...catch不同,throw是将异常抛给调用它的上一级代码。如果在代码中抛出异常,后续的代码将不会执行。throw通常用于在异常无法直接处理的情况下,将异常传递给调用者或其他地方进行处理。 综上所述,try...catch是一种用于捕获和处理异常的机制,可以保证程序在发生异常时不会中断执行,并提供了灵活的异常处理方式。throw则是将异常抛给上一级代码,以便进行进一步处理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值