您的位置:首页 > 其它

关于finally的使用

2016-03-16 21:37 274 查看
alibaba一道笔试题:

public class TestTryCatch {
/**
*/
public static void main(String[] args) {
System.out.println("i的值为。。。" + new TestTryCatch().test());
}

private int test() {
int i = 1;
try {
return i;
} finally {
++i;
System.out.println("finally is Executed…");
}
}
}


答案是:

finally is Executed…

i的值为。。。1

先执行try块中的语句,然后在return前停下来去执行finally中语句,最后回来做return语句

注意finally这句话在前面,且 i 最后是1,并不是2.

add:

下来又想了想,如果你在finally里面再加个return(注意return只能是finally中的最后一行),那么返回的就是finally里面的return了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: