程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> java-Java中,finally在try語句塊中的return前執行還是後執行

java-Java中,finally在try語句塊中的return前執行還是後執行

編輯:編程綜合問答
Java中,finally在try語句塊中的return前執行還是後執行

圖片說明

為什麼finally沒有改變變量a的值。求大神解答

最佳回答:


1、不管有木有出現異常,finally塊中代碼都會執行;
2、當try和catch中有return時,finally仍然會執行;
3、finally是在return後面的表達式運算後執行的(此時並沒有返回運算後的值,而是先把要返回的值保存起來,管finally中的代碼怎麼樣,返回的值都不會改變,任然是之前保存的值),所以函數返回值是在finally執行前確定的;
4、finally中最好不要包含return,否則程序會提前退出,返回值不是try或catch中保存的返回值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved