黑马程序员技术交流社区

标题: 【成都校区】异常的处理 [打印本页]

作者: IgNB    时间: 2018-11-22 12:37
标题: 【成都校区】异常的处理
本帖最后由 IgNB 于 2018-11-22 12:55 编辑

1. 抛出
        1. 抛出异常(默认的处理)
        格式:throws 异常的类型
        位置:方法的参数列表后,在大括号之前
        作用:产生的异常对象会被抛出方法的调用者

                对于编译期异常来说,显式声明抛出编译异常则相当于给出了异常处理方案,则可以编译通过
                对于运行时异常来说,默认就是抛出异常,所以声明抛出与否没有区别。
2. 捕获异常
     格式:
        try {
            // 有可能产生异常的代码
        } catch (异常类型 变量) {
            // 如果捕获到异常后的处理方案
        }

     注意:
                1. catch中的代码只有当产生了对应的异常对象才会被执行
                2. 如果异常对象和catch的类型不匹配,则这个异常对象不能被此catch处理
3. 多异常的捕获处理
        方案:
        1. 每个有可能产生异常的代码都单独的try catch
        2. 一个try 多个catch

    注意:
        1. 如果有可能产生的异常未知,可以捕获一个父类型异常,此父类型异常和其任意的子类型异常都能被捕获
        2. 如果捕获多个异常有子父类关系,则父类catch必须在子类的后面
4. finally
        * 在try catch后,还可以有一个finally的部分,这部分的代码在任意的情况下都会被执行
    作用:可以把一些代码的收尾工作,写在此位置,无论异常是否产生是否被处理,finally的部分都会被执行





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2