Java中Error與Exception的區(qū)別
Error類和Exception類都繼承自Throwable類。
Error的繼承關(guān)系:

Exception的繼承關(guān)系:

二者的不同之處:
Exception:
1.可以是可被控制(checked) 或不可控制的(unchecked)。
2.表示一個(gè)由程序員導(dǎo)致的錯(cuò)誤。
3.應(yīng)該在應(yīng)用程序級(jí)被處理。
Error:
1.總是不可控制的(unchecked)。
2.經(jīng)常用來(lái)用于表示系統(tǒng)錯(cuò)誤或低層資源的錯(cuò)誤。
3.如何可能的話,應(yīng)該在系統(tǒng)級(jí)被捕捉。
Java 中定義了兩類異常:
1) Checked exception: 這類異常都是Exception的子類 。異常的向上拋出機(jī)制進(jìn)行處理,假如子類可能產(chǎn)生A異常,那么在父類中也必須throws A異常??赡軐?dǎo)致的問(wèn)題:代碼效率低,耦合度過(guò)高。
2) Unchecked exception: 這類異常都是RuntimeException的子類,雖然RuntimeException同樣也是Exception的子類,但是它們是非凡的,它們不能通過(guò)client code來(lái)試圖解決,所以稱為Unchecked exception 。
Java 中異常類的繼承關(guān)系圖:

原文鏈接:http://mousepc.iteye.com/blog/1279559
【編輯推薦】















 
 
 



 
 
 
 