当抛出算数异常后,throws不用去声明

当抛出算数异常后,throws不用去声明

在5-4课程结尾,将thorw Exception改换为抛出算数异常,在定义方法的地方也去掉了throws,课程里的代码没有报错,为什么

正在回答

登陆购买课程后可参与讨论,去登陆

5回答

同学你好

理解正确。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

吃吃吃鱼的猫 2019-06-12 19:43:50

同学你好,很抱歉这个知识点之前我说错了。

首先,非检查异常,在方法调用处不是必须处理的。如图所示:

http://img1.sycdn.imooc.com//climg/5d00e4f60001dbdc06310250.jpg

但是在实际开发工作中,只要方法抛出了异常,在调用处都会要求进行处理。

否则,程序崩溃后,给用户造成不好的体验。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 鱼儿0001 #1
    那么,老师,throw产生非检查异常,在定义方法处可以不用throws声明这个非检查异常,对吗?然后,在方法调用处也可以不解决这个非检查异常,对吗?
    2019-06-13 09:20:36
吃吃吃鱼的猫 2019-06-12 19:10:14

同学你好

这里的处理是指:捕获异常。

只要在方法中抛出异常,不论是非检查异常还是检查异常,都需要在方法调用处进行捕获处理。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 鱼儿0001 #1
    老师,不是这样的。非检查异常可以在方法调用处不做处理,因为它是非检查异常不需要一定去做处理,你讲的跟课程讲的不一样。从5-1开始,课程专门说了,throws抛出的非检查异常,在方法调用处可以不做处理,对此还专门讲了文档注释。同样的,throw new 非检查异常,在定义方法处都不用去写throws 非检查异常,那么在方法调用处也应该可以不做处理
    2019-06-12 19:22:23
吃吃吃鱼的猫 2019-06-12 18:04:08

同学你好

如果在方法中抛出异常,那么在方法调用处必须进行处理。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 鱼儿0001 #1
    老师,抛出的是非检查异常,在方法调用处怎么要必须处理?非检查异常可以不做处理吧?
    2019-06-12 18:57:28
好帮手慕阿莹 2019-06-10 18:16:11

因为这个算数异常是非检查异常。

java编译器不要求你一定要把它捕获或者一定要继续抛出

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


  • 提问者 鱼儿0001 #1
    哦哦,谢谢老师。那么,是不是在方法的调用处也可以不用去处理这个非检查异常吗?
    2019-06-12 16:46:01
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师