zoukankan      html  css  js  c++  java
  • 浅谈异常处理

    1、异常的概念

    Java异常类层次结构图: 

    Throwable:有俩个重要的子类:Error(错误)和Exception(异常),两者都是Java处理异常的重要子类,各自都包含了大量的子类。
    Error(错误):是程序无法处理的错误,表示运行应用程序中较严重问题。大多数错误与代码编写者执行的操作无关,而表示代码运行时 JVM(Java 虚拟机)出现的问题。例如,Java虚拟机运行错误(Virtual MachineError),当 JVM 不再有继续执行操作所需的内存资源时,将出现 OutOfMemoryError。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。
    Exception(异常):程序本身能够处理的异常。
    Exception可以分为:checked exceptions和unchecked exceptions:

    1、unchecked exceptions(运行时异常)都是RuntimeException类及其子类异常,就是我们在开发中测试功能时程序终止,控制台出现的异常,比如:
    NullPointerException(空指针异常)
    IndexOutOfBoundsException(下标越界异常)
    ClassCastException(类转换异常)
    ArrayStoreException(数据存储异常,操作数组时类型不一致)
    IO操作的BufferOverflowException异常
    优点:减少代码量,提高效率。
    缺点:会给用户带来不好的体验。

    2、 checked exceptions,非运行时异常(编译异常):
    是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如IOException、SQLException等以及用户自定义的Exception异常,一般情况下不自定义检查异常。
    通俗的话说就是在写代码时出现红线,需要try catch或者throws时出现的异常。
    优点:可以解决已知的异常,给用户更好的体验。
    缺点:代码量大,影响效率。

  • 相关阅读:
    09_ssh服务器的安装和使用
    08_linux下的文件压缩和解压
    38-自定义异常类
    37-手动抛出异常对象
    DataGrip 2020.1 安装与激活
    36-异常的处理
    35-异常
    node+ajax实战案例(1)
    ajax前后端交互原理(7)
    ajax前后端交互原理(5)
  • 原文地址:https://www.cnblogs.com/Qi1007/p/10034076.html
Copyright © 2011-2022 走看看