java异常

一.异常的概念

        1.异常( Exception 也称例外)就是在程序的运行过程中

所发生的不正常的事件,它会中断正在运行的程序

        2.异常的分类


二.捕获异常

        1.try-catch 组合

                

        2. try-finally 组合

                finally 是无论是否产生异常,都执行的代码,但是有一种情况 finally 不执行,即退出 Java 虚拟机。


        3. try-catch-finally 组合

                 正常情况:执行 try-finally

                 异常情况:类型相匹配,执行 try-catch-finally

                 异常情况:类型不相匹配,执行 try-finally


         4.如果在 catch 中存在 return 语句,则先执行完 finally 语句

再回头执行 return 语句

三.声明异常

        1 声明异常的关键字 throws

                方法名的后面,用于声明该方法可能会产生一个异常

                如果方法声明的是 Exception 类型的异常或者是 Checked

                Exception 异常,要求方法的调用处必须做处理。

                    (1)继续使用 throws 向上(方法的调用处)声明

                    (2)使用 try-catch-finally 进行处理

                如果声明的是 RuntimeException 类型的异常,那么方法的调用处可处理可不处理。

        2.继承关系中的声明异常

                    1. 父类的方法声明了 Exception 类型的异常,子类在重方法时,可以声明也可以不声明。但是如果子类重写后的方法使用 super 关键字调用父类的方法,那么要求必须对异常进行处理。

                    2. 如果父类的方法没有异常,那么子类的方法如果一定会有 Exception 或 Checked 异常,要求子类必须自己使用 try-catch 处理,或者给父类方法加上异常的声明

                    3. 如果子类在重写父类的方法时,产生的异常是RuntimeException 异常时,那么可以不用处理

        3.throw 抛出异常对象

写在方法里,,在捕获一个异常前,必须有一段代码先生成异常对象,并把它抛出。这个过程我们以手工做,也可以由 JRE 来实现,但是他们调用的都是 throw 子句。

   

        

四.常见异常

        1.运行时异常 RuntimeException

                 算术异常 ArithmeticException

                 空指针异常 NullPointerException

                 类型转换异常 ClassCastException

                 数组下标越界 ArrayIndexOutOfBoundsException

                 期 望 的 数 据 类 型 与 实 际 输 入 类 型 不 匹 配

InputMismatchException

        2.检查时异常 Checked Exception

                SQLException

                 IOException

                ParseException

五.自定义异常

        1.为什么需要自定义异常

                    在程序中,可能会遇到任何标准异常类都没有充分的描术清楚问题,这种情况下可以创建自己的异常类

        2。 自定义异常的步骤

                1. 继承 Exception 或 RuntimeException

                2. 定义构造方法

                3. 使用异常


        

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容