異常表示程序運行過程當中可能出現的非正常狀態,運行時異常表示虛擬機的一般編程
操做中可能遇到的異常,是一種常見運行錯誤,只要程序設計得沒有問題一般就ide
不會發生。受檢異常跟程序運行的上下文環境有關,即便程序設計無誤,仍然可spa
能因使用的問題而引起。Java 編譯器要求方法必須聲明拋出可能發生的受檢異常,設計
可是並不要求必須聲明拋出未被捕獲的運行時異常。異常和繼承同樣,是面向對繼承
象程序設計中常常被濫用的東西,在 Effective Java 中對異常的使用給出瞭如下指文檔
導原則:編譯器
不要將異常處理用於正常的控制流(設計良好的 API 不該該強迫它的調虛擬機
用者爲了正常的控制流而使用異常)it
對能夠恢復的狀況使用受檢異常,對編程錯誤使用運行時異常編譯
避免沒必要要的使用受檢異常(能夠經過一些狀態檢測手段來避免異常的發
生)
優先使用標準的異常
每一個方法拋出的異常都要有文檔
保持異常的原子性
不要在 catch 中忽略掉捕獲到的異常