Exception 和 RuntimeException区别

Exception 和 RuntimeException都是异常,他们有什么区别呢?

概念

  • Exception :受检查的异常,这种异常是强制我们catch或throw的异常。你遇到这种异常必须进行catch或throw,如果不处理,编译器会报错。比如:IOException。
  • RuntimeException:运行时异常,这种异常我们不需要处理,完全由虚拟机接管。比如我们常见的NullPointerException,我们在写程序时不会进行catch或throw。
    RuntimeException也是继承自Exception的,只是虚拟机对这两种异常进行了区分。小伙伴在编写自己的异常时,要选好继承哪个异常哦~~

实例

接下来,我们看看在实际编写程序时,会有什么表现。首先,我们写一个类,并写两个抛出异常的方法。如下图:

在这里插入图片描述
第一个方法抛出Exception,第二个方法抛出RuntimeException。

然后,我们编写main函数,分别调用两个方法,如下图:
在这里插入图片描述
我们看到在调用throwException()时,编译器提示我们要处理异常,进行try-catch或者在方法上将异常抛出。而在调用throwRuntimeException()时,并没有提示我们进行异常处理。这也就是Exception和RuntimeException的区别。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值