当try块里的代码出现了异常那么try 里的代码会立即终止,程序流程会运行到对应的catch块中。但是try块里多个异常的处理方法。如果一出现异常就停止了try块代码的执行,那怎么走到下面出现异常的代码的?
catch代码块不是在try块里头,是和try块同等级的,多个catch你可以理解为每一个catch都是一个异常处理表格中的一行,try当中发生了某个异常,虚拟机会去这个表格里边,找到对应的catch处理分支(如果有catch对应的异常的话),然后执行catch中的逻辑,而如果catch多个异常,但是并没有捕获try中刚刚发生的异常,程序一样是会异常崩溃的(如果没有做什么其他处理的话)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。