Java異常的相關知識

有些情況程序員認爲是異常,JVM看來卻是正常的,比如年齡是負數;所以,在這種情況下,我們就需要自己手動創建並拋出異常,這就需要用到throw了。

Exception e = new Exception("Age Exception");//創建異常對象

throw e;//拋出異常

程序員自己創建並拋出的對象必須通過throws或try{}、catch{}進行相應的處理。

如果異常被拋到頂層都沒有捕捉就會將異常信息顯示於頂層。當try{}塊中的代碼產生異常時,try{}塊中的代碼就會中斷運行,並由catch{}塊捕捉到產生的異常並作相應的處理,而try{}、catch{}後面的代碼仍可正常執行。如果兩種異常屬於繼承關係,則應按照從子到父的順序進行處理。

由於Java有垃圾回收器,所以異常處理時不需要處理內存的回收問題,但是仍然有一些資源需要程序員來處理,比如文件、網絡連接和圖片等資源,這種情況可以在try{}、catch{}後加上finally{}塊進行程序的清理工作,無論try{}塊中有沒有發生異常,finally{}塊中的代碼都一定會被執行。

通常在一個方法(類)的聲明處通過throws聲明方法(類)可能拋出的異常信息,而在方法(類)內部通過throw聲明一個具體的異常信息;throw只能用於拋出一種異常,而throws可以拋出多個異常,比如:throws Exception1,Exception2{}。

發佈了58 篇原創文章 · 獲贊 6 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章