什麼是異常?為什麼要有異常?
異常就是與以往不同發生的問題,在程序語言中,就是指發生錯誤。異常的發生是任何 事物都不可避免的,因為每一件事物都不是唯一的。所以會存在異常,當然程序語言所實現的現實邏輯功能也會存在異常的發生。
Java異常概念
是Java提供的用於處理程序中錯誤的一種機制。
Java程序的執行過程中如出現異常事件,可以生成一個異常類對象,該異常對象封裝瞭異常事件的信息並將提交到Java運行時系統,這個過程稱為拋出(throw)異常。
當Java運行時系統接收到異常對象時,會尋找能處理這一異常的代碼並把當前異常對象交給其處理,這一過程稱為捕獲(catch)異常。
異常的分類
異常的捕獲和處理
Try語句
Try{…}語句指定瞭一段代碼,該段代碼就是一次捕獲並處理例外的范圍。
在執行過程中,該段代碼可能會產生並拋出一種或幾種的異常對象,它後面的catch
語句要分別對這些異常做出處理。
如果沒有例外產生,所有的catch代碼段都會被略過不執行。
Catch語句
在catch語句塊中是對異常進行處理的代碼,每個try語句塊後可以伴隨一個或多個
catch語句,用於處理可能產生不同的類型異常對象。
Finally語句
Finally語句為異常處理提供統一的出口,使得在控制流程轉到程序的其他部分以前,
能夠對程序的狀態做統一的管理。
無論try所指定的程序塊中是否拋出例外,finally所指定的代碼都要被執行。
通常在finally語句中可以進行資源的清除工作,如關閉打開的文件、刪除臨時文件。
需要註意的有:在異常的捕獲過程中要先捕獲小異常,然後捕獲大異常;在重寫可拋出異常的方法時,重寫的方法需要與原方法拋出的異常一致或者不拋出異常。
摘自 李穎傑的博客