區別分析如下:
Error: 程序不應該捕捉的錯誤,應該交由JVM來處理。一般可能指非常重大的錯誤。這個錯誤我們一般獲取不到,也無法處理!
(推薦教程:java入門教程)
Exception:程序中應該要捕獲的錯誤。這個異常類及它的子類是我們需要學習獲取要處理的。
(1)RuntimeException:運行時異常,也叫未檢查異常,是Exception的子類,但不需捕捉的異常超類,但是實際發生異常時,還是會導致程序停止運行的的,只是編譯時沒有報錯而已。比如除數為零,數組空指針等等,這些都是在運行之后才會報錯。
此類異常,可以處理也可以不處理,并且可以避免。
(視頻教程推薦:java視頻教程)
(2)在Exception的所有子類中,除了RuntimeException類和它的子類,其他類都叫做非運行時異常,或者叫已檢查異常,通常被定義為Checked類,是必須要處理可能出現的異常,否則編譯就報錯了。
Checked類主要包含:IO類和SQL類的異常情況,這些在使用時經常要先處理異常(使用throws或try catch捕獲)。