Java進階教程:異常處理
前往不要以爲懂try...catch..finally就懂異常了!
異常
什麼是異常
Java異常體系
- Throwable:Java語言中所有錯誤和異常的超類,一切可以拋出的東西都是基於此。
- Error:代指嚴重問題,大到你無法處理
- VitrualMachineError:虛擬機錯誤
- AWTError:
- Exception:
- CheckedException:檢查性異常,例如IO異常/SQL異常,特點不管你願不願意,都需要寫try...catch進行處理。
- UncheckedException:也稱運行時異常,出現這種異常時由Java虛擬機接管,異常由系統一層一層向上拋,直到遇到處理代碼。如果沒有遇到,直到到最上層,如果是多線程就由Thread.run()拋出,如果是單線程就被main()拋出。拋出之後,如果是線程,這個線程也就退出了。如果是主程序拋出的異常,那麼這整個程序也就退出了。
- Error:代指嚴重問題,大到你無法處理
注意:層級關係表示繼承。
我們再舉個簡單例子來說明一下檢查異常和運行時異常。