Java相关笔试&&面试经验Java学习笔记

Java基础-笔试题常考-try、finally

2016-12-15  本文已影响142人  陈文洁945

请问,代码运行后输出结果是什么

正确答案是:ABAB

1.这道题考察的点是:return和finally的执行顺序是什么;

执行过程:

前面输出AB,大部分人是没有疑惑的,这是因为Test1方法里面的两个输出语句。

之后,当代码执行到20行时,

先将label='A'进行赋值,

后会检测是否存在finally的语句

有,则执行finally的语句,即跳到22行,接着执行23行,Label='B',故最终结果Label的值是B!;

最终将return语句返回(此时并不进行赋值操作,Label虽然等于B,但是返回的仍然是刚才尚未执行finally语句前的值)。

最终打印的结果是:ABAB

上一篇下一篇

猜你喜欢

热点阅读