2014-02-13 105 views

回答

5

最後的塊異常將掩蓋原始異常。

當一個新的拋出異常在catch塊或最後塊,將傳播出該塊的,那麼當前異常將被中止(和遺忘)作爲新的例外是向外傳播。

檢查herehere更多細節

+0

掩碼將比覆蓋更好。 –

+0

@ JunedAhsan:是的,已更正。 –

+0

http://www.youtube.com/durgaeducation ,在這裏您可以找到異常處理中的所有案例 –

0

按照該JLS 14.20.2。執行try-finally和try-catch-finally

如果catch塊由於原因R突然完成,則執行finally塊。然後有一個選擇:

如果如果finally塊的原因小號突然完成了finally塊正常完成,則try語句的原因突然完成R.

,然後try語句突然就完成了原因S(和原因R被丟棄)。

finally塊可能會拋出異常,如果是,通過在try或catch塊拋出的任何異常都將丟失。

編號:http://docs.oracle.com/javase/specs/jls/se7/html/jls-14.html#jls-14.20.2

相關問題