04.如何处理多个异常

多异常处理

A:对代码进行异常检测,并对检测的异常传递给catch处理。对每种异常信息进行不同的捕获处理。

void show(){ //不用throws 
    try{
        throw new Exception();//产生异常,直接捕获处理
    }catch(XxxException e){
//处理方式  
    }catch(YyyException e){
//处理方式  
    }catch(ZzzException e){
//处理方式  
    }
}

※注意:这种异常处理方式,要求多个catch中的异常不能相同,并且若catch中的多个异常之间有子父类异常的关系,那么子类异常要求在上面的catch处理,父类异常在下面的catch处理。

package com.itheima_01;

/*
 *  如何处理多异常:
 *      可以使用多个try...catch语句
 *      使用一个try和多个catch
 * 
 *  多个catch之间的顺序
 *      多个catch之间可以有子父类
 *      平级之间没有顺序关系
 *      如果有子父类,父类异常必须放在后面
 */
public class ExceptionDemo2 {
    public static void main(String[] args) {
//      method();

        try {
            String s = null;
            System.out.println(s.length());

            int[] arr = new int[5];
            System.out.println(arr[8]);
            
            System.out.println(2 / 0);
            
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("出现数组越界异常");
        } catch (NullPointerException e) {
            System.out.println("出现空指针异常");
        } catch (Exception e) {
            System.out.println("出现异常");
        } 
    }

    private static void method() {
        try {
            String s = null;
            System.out.println(s.length());
        } catch (NullPointerException e) {
            System.out.println("出现空指针异常");
        }

        try {
            int[] arr = new int[5];
            System.out.println(arr[8]);
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("出现数组越界异常");
        }
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 引言 在程序运行过程中(注意是运行阶段,程序可以通过编译),如果JVM检测出一个不可能执行的操作,就会出现运行时错...
    Steven1997阅读 2,506评论 1 6
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,263评论 1 44
  • 今天是除夕节,也是2017年的最后一天——12月30号。 早上在老家,看到村子里每一家门前都贴上了红红的...
    彤心无穷阅读 293评论 0 1
  • 下午在窗前看书,碎屏的手机放在书旁,听到房子有一点异响,突然想,如果现在地震,我能够死里逃生,就一定不会再计较碎了...
    黑曼木木阅读 202评论 0 6
  • 昨天睡觉前,突然觉得今天会遇见一对特别的人,果然是真遇见了。
    黄金时间AA阅读 164评论 0 0