document.write('

B

[解析] 在Java语言的异常处理中,finally语句块的作用就是为了保证无论出现什么情况,finally语句块 里的代码一定会被执行。由于当程序执行到return语句的时候就意味着结束对当前方法的调用并跳出这 个方法体,因此,任何语句要执行都只能在return语句前执行(除非碰到exit方法),所以,finally块里 的代码也是在return前执行的。此外,如果try-finally或者catch-finally中都有return语句,则finally块 中的return语句将会覆盖别处的return语句,最终返回到调用者那里的是finally中return的值。 对于本题而言,在调用testException方法时不会抛出异常,虽然testException方法体内调用return 返回这个方法,但是Java虚拟机要保证finally块的代码必须执行,因此,在调用testException方法时 会输出finally,接着方法调用结束后,在main方法中会输出finished。因此,选项B正确。

');