finally什么意思中文 try中有return,finally塊會(huì)不會(huì)執(zhí)行?
try中有return,finally塊會(huì)不會(huì)執(zhí)行?異常處理的時(shí)候,finally代碼塊的重要性是什么?無論是否拋出異常,最終代碼塊都會(huì)被執(zhí)行。即使沒有catch語句并且拋出了異常,finally代碼
try中有return,finally塊會(huì)不會(huì)執(zhí)行?
異常處理的時(shí)候,finally代碼塊的重要性是什么?
無論是否拋出異常,最終代碼塊都會(huì)被執(zhí)行。即使沒有catch語句并且拋出了異常,finally代碼塊仍將被執(zhí)行。最后,F(xiàn)inally代碼塊主要用于釋放資源,如I/O緩沖區(qū)和數(shù)據(jù)庫連接。
能單獨(dú)與finally語句一起使用的塊是()。(選擇一項(xiàng))?
~~嘗試之后是捕獲。如果抓不到,最后一定會(huì)有。?;蛘呷叨际?/p>
說到finally,編譯器所做的不僅僅是調(diào)整代碼順序,而是復(fù)制finally塊的代碼。此代碼將復(fù)制到每個(gè)try塊的出口,包括return、throw exception,甚至外層的break for。這里的exit不是指Java語句,而是指編譯后的跳轉(zhuǎn)指令。所以如果返回f(x),編譯后會(huì)變成“f(x)的匯編代碼,最后匯編代碼跳轉(zhuǎn)上層調(diào)用地址”