Java的异常处理机制

这篇博客详细介绍了Java的异常处理机制,包括检查性异常、运行期异常和错误的区别,以及如何使用try-catch-finally处理异常。同时强调了在finally块中不应抛出异常,以防止覆盖原有的异常信息。此外,还讨论了异常处理中的失败原子性原则和异常转换时如何避免丢失异常信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出现程序无法控制的外部环境问题(用户提供的文件不存在,文件内容损坏,网络不可用...)时,JAVA就会用异常对象来描述.

  JAVA中用2种方法处理异常:

  1.在发生异常的地方直接处理;

  2.将异常抛给调用者,让调用者处理.

  JAVA异常可分为3种:

  (1)检查性异常:java.lang.Exception

  (2)运行期异常:java.lang.RuntimeException

  (3)错误:java.lang.Error

  顶层是java.lang.Throwable类,检查性异常,运行期异常,错误都是这个类的子孙类.

  java.lang.Exception和java.lang.Error继承自java.lang.Throwable,而java.lang.RuntimeException继承自java.lang.Exception.

  检查性异常------程序正确,但外在的环境条件不满足引发.例如:用户错误及I/O问题----程序试图打开一个并不存在的远程Socket端口.这不是程序本身的逻辑错误,而很可能是远程机器名字错误(用户拼写错误).对商用软件系统,程序开发者考虑并处理这个问题.JAVA编译器强制要求处理这类异常,如果不捕获这类异常,程序将不能被编译.

  运行期异常-----

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

香菜+

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值