java中的異常有Error和Exception,它們都繼承自Throwable類真朗。
二者的不同之處
Exception :
- 可以是可控制的(checked)或不可控制的(unchecked)。
- 表示一個由程序員導致的錯誤。
- 應該在應用程序級被處理代赁。
Error:
- 總是不可控制的(unchecked)掩宜。
- 經(jīng)常用來用于表示系統(tǒng)錯誤或低層資源的錯誤戚扳。
- 如何可能的話旦事,應該在系統(tǒng)級被捕捉魁巩。
異常的分類
- checked exception: 這類異常都是exception的子類。由異常的向上拋出機制進行處理姐浮,假如子類可能產(chǎn)生A異常谷遂,那么在父類中也必須throws A異常÷衾穑可能導致的問題:代碼效率低肾扰,耦合度過高。
- unchecked exception:這類異常都是RuntimeException的子類蛋逾,雖然RuntimeException同樣也是Exception的子類集晚,但是他們是非凡的,它們不能通過client code來試圖解決区匣,所以稱為unchecked exception偷拔。