java异常分类
java异常分类
在Java中,异常错误被分为三大类:严重错误(ERROR),检查型异常(Checked Exceptions)和非检查型异常(Unchecked Exceptions)。这两类异常的主要区别在于它们如何被处理和传播。
严重错误(Error)
Error是Throwable的直接子类之一,它代表严重的问题,通常是由Java虚拟机(JVM)或运行时环境抛出的。Error类表示的错误条件通常是不可恢复的,应用程序不应该尝试捕获或处理这些错误。
检查型异常(Checked Exceptions):
检查型异常是编译时异常,这意味着编译器会强制要求程序员处理这些异常。如果一个方法抛出了检查型异常,那么调用这个方法的地方必须要么捕获这个异常并处理,要么在方法签名中声明抛出该异常。
检查型异常通常用于表示那些预期之外的情况,但程序员可以合理地预期并处理这些情况,例如文件不存在(FileNotFoundException)、网络连接失败(IOException)等。
检查型异常是Exception类或其子类,但不包括RuntimeException及其子类。
非检查型异常(Unchecked Exceptions):
非检查型异常是运行时异常,编译器不强制要求程序员处理这些异常。如果一个方法抛出了非检查型异常,调用这个方法的地方可以捕获并处理,也可以不处理。
非检查型异常通常用于表示程序错误,如逻辑错误、错误的API使用等。这些异常往往是不可恢复的,因为它们通常表示代码中的缺陷。
非检查型异常包括RuntimeException及其子类,如NullPointerException、ArrayIndexOutOfBoundsException、ArithmeticException等。
上一篇:cglib与jdk代理的区别
下一篇:BigDecimal
相关文章
-
OOM问题排查过程?
OOM问题排查过程? 1、分析内存的使用情况 jstat -gc pid 1000,查看内存使用情况
NEW个对象 2024-10-26
-
数据库出现死锁的案例
报告生成案例: 报告编辑的时候:更新模板内容,更新报告引用的id。 报告生成的时候:更新报告引用的id,再更新模板内容。
NEW个对象 2025-08-01
-
死锁详细介绍
死锁是指两个或多个线程互相等待对方占用的资源,而永远无法继续执行下去的情形。
NEW个对象 2025-01-10