如果自定义异常没有抛出,是不是不能在catch的小括号里面写的

如果自定义异常没有抛出,是不是不能在catch的小括号里面写的

如题,自定义异常是否不能和系统自带异常那样用

正在回答 回答被采纳积分+1

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

1回答
好帮手慕小班 2019-08-01 18:00:53

        同学你好,1、自定义异常没有抛出,不能在catch中捕获,这里同学是想说在try块中没有throw 自定义异常 就不能在catch中捕获吗?如果是这个意思,那回答是,没有抛出自定义异常就不可以捕获的,如果同学表达的不是这个意思,还请同学具体描述一下!

        2、自定义异常也是继承了Exception类,与jdk中已有的异常类是相同的,比如常见的空指针异常-->NullPointerException

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

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

这里NullPointerException也最终是继承自Exception呐!

这些异常类都是继承自Exception,所以自定义的异常类和jdk中已知的异常类是一样的哟!

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

  • 提问者 慕UI5285863 #1
    就是说,我同样写一个try-catch块,在没有抛出异常的情况下,catch后面写其他普通的异常类型没有问题,可是写自定义异常类型就是报错,这是为什么?
    2019-08-01 18:05:50
  • 好帮手慕小班 回复 提问者 慕UI5285863 #2
    同学你好,1、这里需要注意catch中异常的顺序,一定要把异常范围小的放在前面,范围大的放在后面!比如Exception这个异常的根类一定要刚在最后一个catch里面,如果放在前面或者中间,任何异常都会和Exception匹配的!2、这里同学的自定义异常是一个直接继承了Exception的类,所以要根据异常的父子级关系来将自定义的异常放入对应顺序下的catch块儿中! 如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
    2019-08-01 18:13:49
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星

相似问题

登录后可查看更多问答,登录/注册

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

在线咨询

领取优惠

免费试听

领取大纲

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