Java——异常

java中,万物皆可对象

异常类分类:


    1、运行时异常:java不会强制性处理,可处理可不处理

    2、编程异常:必须处理,不处理则编译不通过

    3、错误:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。


面试题:常见的几个异常类

    jdk的API文档

    1、RuntimeException

    2、ArithmeticException

    3、SQLException

    4、IOException

    5、ParseException

    6、NullPointerException

    7、IndexOutOfBoundsException

    8、ClassCastException


异常处理:

    1、try-catch-finally: 自动处理异常

        try{

            可能产生异常的代码

        }catch(异常类 变量名){    // 捕获到异常(try中的代码产生的异常对象)与catch的异常类

            处理异常的代码

        }finally{

            一定会执行

        }

    注意:Exception 继承 Throwable,若没检测到则抛出异常对象,不会检查返回类型

    注意:如果一个方法有return且包含了finally,finally执行会在return之前


    2、throw throws: 抛出异常

        throw 异常对象

            抛出异常对象

            在实际开发中,throw一般使用if包裹,满足某种条件才抛出异常

        throws 异常类

            1、如果抛出编译时异常,必须在方法签名上,使用throws声明抛出什么类型的异常

            2、如果一个方法内部调用其它方法,其它方法抛出一个编译/运行时异常,该方法不想处理,则可使用throws声明,继续向上抛

            3、throws后面可以接多个异常类,若这多个异常类存在继承关系,则只需要写父类

异常常用方法:

    1、getMessage()            拿出异常信息

    2、printStackTrace()       打印堆栈异常信息

    

自定义异常:

    1、编写一个类,去继承Exception或RuntimeException

    2、根据父类的构造方法来生成子类的构造方法

    3、使用throw new 异常对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值