在Java中如何捕获IllegalArgumentException

使用try-catch捕获IllegalArgumentException可提升程序健壮性,如Integer.parseInt(“abc”)抛出NumberFormatException(其子类)时能被catch块处理;业务中可主动抛出该异常并捕获,如setAge(-5)时提示“年龄必须在0到150之间”;也可合并捕获多个异常,用|分隔类型,统一处理参数校验问题。

在java中如何捕获illegalargumentexception

在Java中捕获 IllegalArgumentException 的方法与其他异常一样,使用 try-catch 语句块即可。这个异常通常表示传入方法的参数不合法或不符合要求,属于运行时异常(RuntimeException),虽然不是强制捕获的,但在某些场景下提前处理能提升程序健壮性。

使用 try-catch 捕获 IllegalArgumentException

将可能抛出该异常的代码放在 try 块中,并用 catch 捕获 IllegalArgumentException:

try {    Integer.parseInt("abc");} catch (IllegalArgumentException e) {    System.out.println("参数非法:" + e.getMessage());}

上面的例子中,Integer.parseInt() 实际上抛出的是 NumberFormatException,它是 IllegalArgumentException 的子类,因此也能被成功捕获。

主动抛出并捕获自定义的 IllegalArgumentException

在业务逻辑中,可以手动检查参数并抛出异常,再进行捕获处理:

千面视频动捕 千面视频动捕

千面视频动捕是一个AI视频动捕解决方案,专注于将视频中的人体关节二维信息转化为三维模型动作。

千面视频动捕 27 查看详情 千面视频动捕

立即学习“Java免费学习笔记(深入)”;

public void setAge(int age) {    if (age  150) {        throw new IllegalArgumentException("年龄必须在 0 到 150 之间");    }    // 正常处理}// 调用时捕获try {    setAge(-5);} catch (IllegalArgumentException e) {    System.out.println("错误:" + e.getMessage());}

捕获多个异常的情况

如果一段代码可能抛出多种异常,可以分别处理,也可以合并处理:

try {    someMethod(null);} catch (IllegalArgumentException | NullPointerException e) {    System.err.println("参数相关异常:" + e.getMessage());}

这样可以统一处理与参数校验相关的异常类型。

基本上就这些。只要把可能出问题的代码放进 try 块,明确 catch IllegalArgumentException,就能有效应对参数不合法的情况。

以上就是在Java中如何捕获IllegalArgumentException的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/287757.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月4日 19:12:55
下一篇 2025年11月4日 19:13:31

相关推荐

发表回复

登录后才能评论
关注微信