异常Exception

出现原因

  • 当出现一个不算致命的问题时,为了防止程序崩溃,进而保证程序健壮性
  • 执行过程中所发生的异常事件可分为两大类
    • Error(错误):Java虚拟机无法解决的严重问题。如:JVM系统内部错误、耗尽等严重情况。比如:StackOverflowError[栈溢出]和OOM(out ofmemory),Error 是严重错误,程序会崩溃。
    • Exception:其它因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理。例如空指针访问,试图读取不存在的文件,网络连接中断等等,
    • Exception 分为两大类:运行时异常[程序运行时,发生的异常]和编译时异常[编程时,编译器检查出的异常]。编译时异常必须处理。

异常体系图

常见运行时异常

  • NullPointerException 空指针异常
  • ArithmeticException 数学运算异常
  • ArrayIndexOutOfBoundsException 数组下标越界异常4)ClassCastException 类型转换异常
  • NumberFormatException 数字格式不正确异常[

常见编译异常

  • SQLException //操作数据库时,查询表可能发生异常
  • IOException //操作文件时,发生的异常
  • FileNotFoundException //当操作一个不存在的文件时,发生异常
  • ClassNotFoundException //加载类,而该类不存在时,异常
  • EOFException // 操作文件,到文件末尾,发生异常
  • IegalArguementException //参数异常

异常处理

  • try - catch - finally

可以有多个catch语句,捕获不同的异常(进行不同的业务处理),要求父类异
常在后,子类异常在前,比如(Exception在后,NullPointerException 在前),如果发生异常,只会匹配一个catch,案例演示

  • throw

自定义异常

  1. 一般情况下,我们自定义异常是继承 RuntimeException
  2. 即把自定义异常做成 运行时异常,好处时,我们可以使用默认的处理机制
  3. 即比较方便

posted @ 2024-03-21 14:53  白子伍  阅读(30)  评论(0)    收藏  举报