長(zhǎng)春做網(wǎng)站 長(zhǎng)春萬(wàn)網(wǎng)關(guān)鍵詞推廣操作
異常處理分為三類:
檢查性異常
用戶錯(cuò)誤或問(wèn)題引起的異常,這是程序員無(wú)法預(yù)見(jiàn)的。例如要打開(kāi)一個(gè)不存在文件時(shí),一個(gè)異常就發(fā)生了,這些異常在編譯時(shí)不能被簡(jiǎn)單地忽略。
運(yùn)行時(shí)異常
運(yùn)行時(shí)異常是可能被程序員避免的異常,與檢查性異常相反,運(yùn)行時(shí)異常可以在編譯時(shí)被忽略。
錯(cuò)誤:
錯(cuò)誤不是異常,而是脫離程序員控制的問(wèn)題。例如,當(dāng)棧溢出時(shí),一個(gè)錯(cuò)誤就發(fā)生了,它們?cè)诰幾g也檢查不到的。
如下圖:
在Java中定義了兩種類型的異常和錯(cuò)誤。
JVM(Java虛擬機(jī)) 異常
由 JVM 拋出的異?;蝈e(cuò)誤。例如:NullPointerException 類,ArrayIndexOutOfBoundsException 類,ClassCastException 類。
程序級(jí)異常
由程序或者API程序拋出的異常。例如 IllegalArgumentException 類,IllegalStateException 類。