-
1、基本顺序(有无异常)
- 当try代码块中无异常时不执行chatch,执行完try代码块后执行finally中的代码。
- 当执行try代码块时遇到异常后,不再执行try代码块异常之后的代码,直接跳转到chatch中执行chatch代码块中的代码,最后执行finally中的代码。
-
2、在try…chatch…finally…(加入return后,return执行的顺序)
- try代码块无异常时:
- try、chatch、finally代码块中都含有return:只执行finally中的return语句;
- try、chatch代码块中都含有return:只执行try代码块中的return;
- try代码块有异常时:
- try、chatch、finally代码块中都含有return:优先执行finally中的return语句;
- try、chatch代码块中都含有return:只执行chatch代码块中的return;
- try代码块无异常时:
注意:finally执行前的代码里面有包含return,则会先确定return返回值,然后再执行finally的代码,最后再执行return