1、介紹:try catch finally語句常用來進行系統異常捕獲,在實際的工作中可以在catch語句塊中記錄系統異常日誌。finally語句塊是無論前面邏輯**是否有異常,其內部的語句都會執行。常用於流的關閉等操作
2、分析
private static int testnomal()
catch (exception)
finally
return x;//不執行
}//無異常狀態下,最終返回101
說明:如果try語句塊中沒有錯誤並有return語句,則返回的執行完中即返回結果值,然後繼續執行finally塊中的語句。
private static int testnomal()
catch (exception)
finally
return x;//返回201
}//無異常狀態下,最終返回201
說明:如果try塊中的語句沒有return,則執行finally中的語句庫,如果遇到return 則返回,後面的語句不會再執行。如果finally中也沒有return,則根據最終的return結果進行返回
private static int testexception()
catch (exception)
finally
return x;//不執行
}
說明:如果try語句塊中存在異常,則異常語句後的**不再執行,直接跳轉到catch語句塊中進行執行,如果catch中有return語句,則返回,catch中return語句後的**不再執行,而是執行finally塊中的語句。如果catch中沒有return語句,則繼續執行,知道遇到return語句時才進行結果返回。
重複強調:無論是否存在異常finally中的語句都會執行
try catch finally執行順序
public class test public static int ma catch exception e finally 說明 不出現異常情況 執行順序 try finally 出現異常情況 執行順序 try catch finally try中有返回語句,沒有異常 執行順序 try ret...
try catch finally執行順序
結論 1 不管有木有出現異常,finally塊中 都會執行 2 當try和catch中有return時,finally任會執行 3 finally是在return表示式運算後前執行的,所以函式返回值是在finally執行前確定的 4 finally中最好不要包含return,否則程式會提前退出,返回...
try catch finally使用體會
try catch finally public class finallytest static int test finally 結果是2。在try語句中,在執行return語句時,要返回的結果已經準備好了,就在此時,程式轉到finally執行了。在轉去之前,try中先把要返回的結果存放到不同於...