老师 我问一下这个自定义异常的问题

老师 我问一下这个自定义异常的问题

https://img1.sycdn.imooc.com//climg/63639f9409b8dada11900330.jpg

我看源码里是这样调用的 LoginException->RuntimeException->Exception->Throwable 最后存放在detailMessage属性中的,但是源码也没有提供打印输出这个属性值的代码呀?怎么执行自定义异常的时候出错时控制台就能输出异常提示呢?

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

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

1回答
好帮手慕小尤 2022-11-04 10:26:03

同学你好,1、在代码中抛出了异常,并没有代码捕获异常进行处理,所以在项目中输出了异常信息如下所示:

https://img1.sycdn.imooc.com//climg/63647718091c494d06250284.jpg

2、try里面的异常触发会逐层向上的,在我们try语句里主动、被动抛出异常的时候,程序会调向调用者程序寻找和它相匹配的catch语句,执行catch语句里面相应的异常处理程序。但假如没有找到相匹配的catch语句,那么它会再转向上一层的调用程序…这样逐层向上,直到最外层的异常程序终止程序并打印异常。

祝学习愉快!

  • 提问者 星辰很精彩 #1

    关键是 最后凭什么打印异常信息呢? 又没有打印异常信息到控制台的代码 我有点点不明白呀

    2022-11-04 16:47:41
  • 好帮手慕小尤 回复 提问者 星辰很精彩 #2

    同学你好,使用 throws 抛出异常由JVM处理,当我们抛出异常(throw)就会抛出给JVM。并在代码中没有处理抛出的异常,则JVM会进行打印输出异常,并结束程序。

    祝学习愉快!

    2022-11-04 17:24:16
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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