Java中的异常以及异常处理

本文详细介绍了Java中的异常处理,包括异常的分类、特点以及处理方式。异常分为编译期异常和运行期异常,前者必须处理,后者编译时不强制处理但建议处理。异常处理主要涉及throws关键字用于方法声明抛出异常,以及try-catch块用于捕获和处理异常。对于运行期异常,建议在最外层统一捕获处理。遵循良好的异常处理实践,可以提高程序的健壮性和稳定性。
摘要由CSDN通过智能技术生成

什么是异常?

异常是程序在“编译”或者“运行”的过程中可能出现的问题。

异常分类

Error:系统级别问题、JVM退出等,代码无法控制。

Exception:称为异常类,它表示程序本身可以处理的问题。

异常分为:编译期异常和运行期异常

 异常的特点

编译期异常的特点

编译时异常:继承自Exception的异常或者其子类

编译阶段报错,必须处理,否则代码不通过。

运行期异常的特点

运行时异常:直接继承自RuntimeException的异常或者其子类

编译阶段不报错,运行可能报错。

异常处理

编译期异常处理

编译期异常的处理形式有三种:

1、出现异常直接抛出去给调用者,调用者也继续抛出去。

2、出现异常自己捕获处理,不麻烦别人。

3、前两者结合,出现异常直接抛出去给调用者,调用者捕获处理。

异常处理方式1 —— throws

throws:用在方法上,可以将方法内部出现的异常抛出去给本方法的调用者处理

这种处理方式并不好,发生异常的方法自己不处理异常,如果异常最终抛出去给虚拟机将引起程序死亡。

抛出异常格式:

 规范做法:

 当方法中出现很多个异常时,可以这样写;代表可以抛出一切异常

异常处理方式2 —— try…catch…

监视捕获异常,用在方法内部,可以将方法内部出现的异常直接捕获处理

格式:

建议格式:

处理方式3 —— 前两者结合 

 方法直接将异通过throws抛出去给调用者 ,调用者收到异常后直接捕获处理。

运行期异常处理

运行时异常编译阶段不会出错,是运行时才可能出错的,所以编译阶段不处理也可以。

按照规范建议还是处理:建议在最外层调用处集中捕获处理即可

如下:

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

心皿月

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

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

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

打赏作者

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

抵扣说明:

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

余额充值