Java 异常的分类及处理

本文详细介绍了Java中的异常分类,包括Error和Exception,以及checked和unchecked异常。强调了如何处理checked异常,并对异常的继承体系进行了说明。此外,文章还探讨了try-catch-finally语句块的工作原理,以及在finally块中使用return的注意事项。最后,提出了处理异常时需要考虑的三个关键问题:异常发生的地点、处理异常的角色和处理方式。
摘要由CSDN通过智能技术生成

异常的分类

Java 中提供了丰富的异常类,这些异常类之间有严格的继承关系如下:

Java 异常的分类及处理


JDK 中定义了一套完整的异常机制,所有异常都是Throwable的子类,分别为 Error(致命异常) 和 Exception (非致命异常) 。Error 是一种非常特殊的异常类型,他的出现标识着系统发生了不可控的错误,例如 StackOverflowError,OutOfMemoryError。这类错误,程序员是无法处理的,只能人工介入。

Execption 又分为checked 和 unchecked 异常
checked 需要在代码中显式处理的异常,否则会出现编译出错。如果能自行处理则可以在当前方法中捕获异常;如果无法处理,则继续向调用方抛出异常对象。常见的checked 异常包含SQLException、ClassNotFoundException 等。

checked 异常可以进一步细分为两类:

  • 无能为力、引起注意型
    针对此异常,程序无法处理,如字段超长等导致SQLException,即使做再多的重试对解决异常也没有任何帮助,一般处理此类异常的做法是 完整地保存异常现场,供开发工程师介入解决。
  • 力所能及、坦然处之 行
    如发生未授权异常(UnAuthorzedException),程序可跳转到权限上你去哪个野蛮

在Exception 中,unchecked 异常是运行时异常,它们都继承自RuntimeException,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值