(复习资料)异常

Throwable -> Exception

1.已检查异常 Exception(已经预料到的)
      必须要处理的
      FileNotFoundException  extends  IOException
      ClassNotFoundException
      new fileInputStream("a.txt")

2.未检查异常   RuntimeException
      程序失误,程序员马虎
      也叫运行时异常RunTimeException
      ClassCastException  ConcurrentModificationException
      IndexOutOfBoundsException   NullPointerException

3.处理异常
     自行处理 :try - catch
           1:try-catch 必须同时存在
           2:一个try可以有多个catch
           3:catch的顺序:多个异常之间没有关系,顺序随意
                         多个异常之间存在父子关系,必须子类异常在前
           4:e.printStackTrace();
           5:出现异常的位置后续try的部分的代码执行不到,但是不影响catch以及后续代码执行!
              (try-catch的意义:使得程序不会中断)
           6:finally可以选择性添加,指的是无论异常是否发生,都会执行的代码块
              一般finally部分的代码块用来关闭(释放)资源,关闭资源都会出现异常
           7:catch可以抓取任意的进行时异常,但不可以随意抓取已检查异常

           try-catch-finally
           问题:如果在try中遇到return是否执行finally
           答:会执行finally,finally的代码块不影响return值

     向上级抛出 :throw(方法申明:throws)
           throw:接异常对象,取代return
           throw new xxException();
           需要在方法申明上添加 throws xxException
           这个方法的调用者依然需要处理这个异常(try-catch // throws)
           最终如果异常到主方法中抛出,JVM只能做中断处理

     处理异常的原则:
       1:能自己处理的自己处理
       2:不能处理了再向上抛出

4.自定义异常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值