Java中異常的種類分為兩大類:Checked Exception(受檢異常)和 Unchecked Exception(非受檢異常)。
Checked Exception(受檢異常)是在編譯期強制要求處理的異常,必須在代碼中顯式地進行捕獲或聲明拋出。常見的 Checked Exception 有:
- IOException(輸入輸出異常)
- SQLException(數據庫異常)
- ClassNotFoundException(類未找到異常)
- InterruptedException(線程中斷異常)
Unchecked Exception(非受檢異常)是在運行時發生的異常,不需要在代碼中進行捕獲或聲明拋出。常見的 Unchecked Exception 有:
- NullPointerException(空指針異常)
- ArrayIndexOutOfBoundsException(數組越界異常)
- IllegalArgumentException(非法參數異常)
- IllegalStateException(狀態非法異常)
Error(錯誤)是嚴重的問題,通常是指 JVM 或者虛擬機內部的錯誤,無法通過代碼處理。常見的 Error 有:
- OutOfMemoryError(內存溢出錯誤)
- StackOverflowError(堆棧溢出錯誤)
- NoClassDefFoundError(類未定義錯誤)