十一,异常处理

1.带有异常的方法和调用方

    异常的方法必须声明可能抛出的异常,   调用异常方法的方法可以抓住其他方法抛出的异常,异常总是会丢回给调用方

    public void takeRisk() throws BadException{

        if(abandonAllHope){

            throw new BadException();   

         }

    }

    编译器回核对每件事,除了RunTimeExceptions之外

2.try/catch块的流程控制

    try如果执行成功 catch里面不执行直接到catch后面的语句

    try如果抛出异常,try后面的语句不再执行,直接执行catch里面的语句

    如果有finally  不管try/catch 里面有没有return都会先执行finally里面的语句然后在执行return语句

    catch与finally不能没有try

    try和catch之间不能有程序

    try一定要有catch或finally

    只带有finally的try必须要声明异常

3.一个以上的异常声明和处理

      如果两个或者两个以上的异常有共同的父类时,可以只声明该父类就行(异常是多态的)

    为每个需要单独处理的异常编写不同的catch块(catch块从下到大排列)

      public void doLaundry() throws PantsException, LingerieException{};

        try{ }catch( PantsException ){}catch( LingerieException ){}

4.异常的处理

    处理  或者duck掉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值