異常:中斷了正常指令流的事件,是JVM虛擬機產生的對象
異常是程序運行時產生的,和編譯無關
class Test{ public static void main(String args[]){ System.out.PRintln(111111); int i = 1 / 0; System.out.println(222222); }}
以上為算術異常(屬于RuntimeExcepiotn的子類)信息,當出現異常后,將不再執行異常后面的語句。
異常的分類:由JDK提供的類

所有的異常類都是Throwable的子類。Throwable兩個直接子類為Exception和Error。Error指JVM產生的錯誤,一旦產生錯誤,JVM則會關閉,程序也就不復存在了,程序員對Error無能為力。Exception也可以分為uncheckException和checkException。uncheckException包括了RuntimeExcepiotn和RuntimeExcepiotn的子類。Exception的直接子類中除了RuntimeExcepiton外都屬于checkException
uncheckException和checkException的區別:
當程序有可能出現checkException時,編譯器會強制要求你對可能會出現異常的代碼進行處理、捕捉。
使用try…catch…finally捕捉處理異常
class Test{public static void main(String args[]){System.out.println(111111);try{System.out.println(222222);int i = 1 / 0;System.out.println(333333);}catch(Exception e){e.printStackTrace();System.out.println(444444);}finally{System.out.println(555555);}System.out.println(666666);}}
當程序運行出現異常則調到catch中去執行,如果沒有異常就不執行catch中的代碼,而finally中的代碼不論是否有異常都會執行。
新聞熱點
疑難解答