zoukankan      html  css  js  c++  java
  • 异常

    异常处理   运行时
    
    try{
        插卡
        输入密码和金额 2000
        余额 -= 2000
        吐钱 2000
    }
    catch(吐钱异常 e){
        余额 += 2000
    }
    finally{
        取卡
    }
    
    异常的分类: Throwable
    
       Error:错误          严重底层   无法避免 无法处理   
       Exception:异常     可以处理
           RuntimeException及子类:未检查异常  可以避免  可处理可不处理  
           非RuntimeException子类:已检查异常  无法避免  必须处理
    
    异常对象的产生和传递
       throw 异常对象;    抛出一个异常,throw作用等同于return
    
       传递:沿着方法调用链反向传递
     
    异常的处理
       throws 声明抛出     throws 已检查异常类名   
                          本方法内部如果出现该类型的异常,本方法不做处理
       try-catch 捕获异常  适用于所有异常(未检查+已检查)
         可以同时catch子类异常和父类异常,但必须先catch子类异常
       try-catch-finally   finally:无论如何都会执行 通常用于释放资源
       try-finally         没有真正捕获异常!
    
    自定义异常
       自己写类 继承Exception或RuntimeException
    
    方法覆盖(Override)
        子类用特殊的方法实现替换父类继承给它的一般的方法实现
        语法:方法名、参数表、返回值类型相同;访问修饰符相同或更宽 
             子类不能抛出比父类更多的异常
             子类不能抛出一个父类没有抛出的异常
             异常范围只能与父类相同或更少
  • 相关阅读:
    【bzoj2006】超级钢琴
    【bzoj4940】这是我自己的发明
    【arc076E】Connected?
    【agc004C】AND Grid
    选举
    几何
    打击目标
    【CF Gym100228】Graph of Inversions
    【CodeChef】Chef and Graph Queries
    大包子玩游戏
  • 原文地址:https://www.cnblogs.com/zhangqiyang/p/3701510.html
Copyright © 2011-2022 走看看