1. 程式人生 > >Throwable中的異常和錯誤

Throwable中的異常和錯誤

Throwable

Java中有個java.lang.Throwable類,這個類是Java中所有異常和錯誤的基類。Throwable下有兩個大類那就是異常(Exception)和錯誤(Error)。 

異常

異常(Exception),Java中異常又分兩大類,執行時異常和編時譯異常,除了執行時異常(RuntimeException)其餘的都是編譯時異常。

編譯時異常:此異常是可以被預知的,編譯器會強制在編譯時對異常進行捕獲或宣告。 編譯時異常    丟擲該異常原因 FileNotFoundException(檔案找不到異常)    當試圖開啟指定路徑找不到或由於某些原因不可訪問時,丟擲該異常。 IOException (I/O 異常)    當發生某種 I/O 異常時,丟擲此異常。 SQLSyntaxErrorException (SQL語法錯誤異常)    此異常表示正在進行的查詢違反了 SQL 語法規則。 異常時,丟擲此異常。

執行時異常:一般是系統錯誤產生的異常,當出現這樣的異常時,總是由虛擬機器處理。比如:我們從來沒有人處理NullPointerException 異常。 執行時異常    丟擲該異常原因 NullPointerException (空指標異常)    當應用試圖在要求使用物件的地方使用了null時,丟擲該異常。 ArrayIndexOutOfBoundsException (陣列索引越界異常)    當對陣列的索引值為負數或大於等於陣列大小時丟擲。 ClassNotFoundException (類找不到異常)    當應用試圖根據字串形式的類名構造類,而在遍歷CLASSPATH後找不到class檔案時,丟擲該異常。

錯誤

錯誤一般是由主觀因素導致的,程式設計師對程式不夠了解從而產生的錯誤。最常見的錯誤有程式進入死迴圈、記憶體洩漏等。程式執行時本身無法解決這些錯誤,錯誤是很難處理的,Error類物件由java虛擬機器生成並丟擲。