問題:
1. finally一定會執行到嗎?
2. 如果try或者catch中有return/throw,那麼finally的執行是在return/throw之前還是之後?更有甚者,如果try裏面有"return a",而finally裏面有"return b",那麼最終返回值到底是a還是b?
哪怕資深JAVA程序員都不一定能準確回答這兩個問題。在網上找到一篇不錯的文章:http://www.ibm.com/developerworks/cn/java/j-lo-finally/index.html