zoukankan      html  css  js  c++  java
  • JAVA中的异常(异常处理流程、异常处理的缺陷)

    • 异常处理流程

    1)首先由try{...}catch(Exception e){ System.out.println(e); e.printStackTrace(); }finally{...}结构

    2)当JVM遇到异常时,会产生一个Exception对象 或 继承自Exception的子类的对象。

    3)将异常对象向上层(调用它的代码块)抛出,知道碰到一个catch块(作相应处理) 或 一直抛到了最外层(导致程序异常终止)。并停止异常之后的代码的执行,但是finally块中的代码还会执行!换句话说,不管有没有异常,finally块都会执行,所以,它常用来放一些收尾工作代码。)

    3)在catch块中处理异常e,将信息打印出来。

    • 可以通过继承Exception,写自己的异常处理类。。
    • 异常处理也会有缺陷:

    1)finally块中出现异常,我们就无计可施了,只能让异常抛到最外层并终止程序。

    2)在继承时,子类中与父类同名的方法在声明异常的时候只能比父类的级别小,而不能扩大。(父类无异常throws E(),子类也不能有;父类有throws Echild,子类只能有throws Egrandchild,而不能有throws E。)

    3)要注意多个catch块的顺序,一定要把子类的catch块写在上面,父类的catch块写在下面。(否则编译出错)

    如:try{...}catch(Egrandchild e){...}catch(Echild e){...}catch(E e){...}finally{...}。

  • 相关阅读:
    Android学习——day13
    寒假周总结三
    构建之法读书笔记03
    Android学习——day12
    每日日报2020 11/18
    每日日报2020 11/17
    每日日报2020 11/16
    每日日报2020 11/15
    每日日报2020 11/13
    每日日报2020 11/12
  • 原文地址:https://www.cnblogs.com/mmcmmc/p/3895707.html
Copyright © 2011-2022 走看看