赞
踩
题记
try-catch后只要有finally,那么finally就一定会被执行;不管try-catch是否有return,finally仍然会执行,如果finally中有return,则只会返回finally中的return的值。
try/catch-finally的执行顺序可以分为:有return和没有return来讨论
代码如下(示例):
- try {
- //代码块
- } catch (Exception e) {
- //代码块
- } finally {
- //代码块
- }
代码如下(示例):
- try {
- //代码块
- } catch (Exception e) {
- //代码块
- } finally {
- //代码块
- }
- return 2;
代码如下(示例):
- try {
- //代码块
- return 1;
- } catch (Exception e) {
- //代码块
- } finally {
- //代码块
- }
- return 4;
代码如下(示例):
- try {
- //代码块
- } catch (Exception e) {
- //代码块
- return 2;
- } finally {
- //代码块
- }
- return 4;
代码如下(示例):
- try {
- //代码块
- return 1;
- } catch (Exception e) {
- //代码块
- } finally {
- //代码块
- return 3;
- }
- return 4;
代码如下(示例):
- try {
- //代码块
- } catch (Exception e) {
- //代码块
- return 2;
- } finally {
- //代码块
- return 3;
- }
- return 4;
代码如下(示例):
- try {
- //代码块
- return 1;
- } catch (Exception e) {
- //代码块
- return 2;
- } finally {
- //代码块
- return 3;
- }
- return 4;
1.无return:
无异常:try-->finally;
有异常:catch-->finally。
2.有return:
无异常:try-->finally,返回finally中的return;
有异常:catch-->finally,返回finally中的return。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。