B站 韩顺平 笔记 (Day 22)
目录
1(throws使用细节)
2(自定义异常)
2.1(概念)
2.2(步骤)
2.3(快速入门)
2.4( throws 和 throw 的区别)
2.5(测试题)
3(练习题)
3.1(题1)
3.2(题2)
3.3(题3)
3.4(题4)
1(throws使用细节)
2(自定义异常)
2.1(概念)
2.2(步骤)
2.3(快速入门)
2.4( throws 和 throw 的区别)
2.5(测试题)
3(练习题)
3.1(题1)
3.2(题2)
3.3(题3)
执行func(),到try中抛出一个运行时异常(throw new RuntimeException()),但是finally一定要执行,所以一定能输出"B",然后再回到func()抛出异常。抛出异常以后"A"便不再执行,到达catch,因为Exception e是 RuntimeException() 的父类,所以被捕获,输出"C",因为异常被捕获,被处理了,所以程序不会退出,所以可以继续输出"D"。
故:输出"BCD"
3.4(题4)
在main中的try中,直接到达showExce(),在下面的showExce()抛出一个Exception()。所以在main方法中掉showExce()会直接把异常抛出,一旦抛出异常"A"这个就不会执行了。接下来到catch中执行"B",然后finally输出"C",因为异常已被处理,所以不会导致程序崩溃退出,继续执行输出"D"。
故:输出"BCD"