java基础之 异常
异常体系继承关系图:
异常机制是指当程序出现错误后,程序如何处理。异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。 (作者:胖见个耿 https://www.bilibili.com/read/cv7539646 出处:bilibili)
异常是程序中的一些错误,所有异常都继承自Throwable,Throwable有两个子类:Error和Exception,Exception分为RuntimeException(运行时异常)和非RuntimeException(检查性异常 )。
异常和错误的区别是:异常能被程序本身可以处理,错误无法处理。
Error(错误):是程序无法处理的错误,表示运行应用程序中较严重问题。例如,Java虚拟机运行错误(Virtual MachineError),虚拟机内存不够错误(OutOfMemoryError
)、
检查性异常(编译器要求必须处置的异常):需要用 try...catch... 语句捕获并进行处理,并且可以从异常中恢复。除了Exception中的RuntimeException及RuntimeException的子类以外,其他的Exception类及其子类(例如:IOException和ClassNotFoundException)都属于检查性异常。这种异常的特点是Java编译器会检查它,也就是说,当程序中可能出现这类异常,要么用try-catch语句捕获它,要么用throws子句声明抛出它,否则编译不会通过。
运行时异常(编译器不要求强制处置的异常):是程序运行时错误。例如:1.ArithmeticException(算术条件异常。譬如:整数除零等。)、2.NullPointerException(空指针异常)、3.ArrayIndexOutOfBoundsException(数组索引越界异常)、4.ClassCastException(类型转换异常)、5.IllegalArgumentException(非法参数异常)。
详情查看
1.链接 : Java:详解Java中的异常(Error与Exception)_王小二(海阔天空)-CSDN博客
2.异常