Java 异常种类及处理方法

概述

异常的基类是 Throwable, Throwable 有两个子类:

  • Exception : 表示可以恢复的异常, 编译器可以捕捉。
  • Error : 表示编译时和系统错误, 表示系统在运行期间出现了严重的错误, 属于不可恢复的错误。

受检异常和非受检异常

  • 受检异常指的是在编译期间会接受编译器检查, 且必须要处理( try... catch 处理掉或直接在方法签名中使用 throws 抛出), 否则会编译出错
    • 此类异常是除了 RuntimeExceptionError 外所有的异常, 例如 IOExceptionInterruptedExceptionSQLException
  • 非受检异常 指的是编译期间不会接受编译器检查, 不必处理的异常。
    • 此类异常包括了 RuntimeExceptionError 的所有异常。

异常处理

一般有两种方法来处理异常 : try...catch 或直接在方法签名中使用 throws 抛出。

catch 使用注意事项

  • 参数的异常类型必须是 Throwable 类型。
  • 如果有多个 catch 语句块, 则从上到下必须按照从 子类到父类 的顺序排布, 否则会编译出错

finally 使用注意事项

  • finally 里面的代码一般情况下会执行, 但是如果在 try 或者 catch 中执行 System.exit(1) (即虚拟机退出)时, 不会执行 finally 中的代码。
  • finally 中最好不要出现 return 语句, 因为最终执行的一定是 finally 里面的 return
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值