1. 程式人生 > 其它 >java-javaSE-異常機制

java-javaSE-異常機制

java中的異常結構

  • java 中的所有異常都來自於頂級父類 Throwable,Throwable 有兩個子類 Exception 和 Error
    • Error 是 Java 虛擬機器無法解決的嚴重問題,出現時會導致程式終止執行。如: StackOverflowError 和 OOM 。
    • Exception 不會導致程式停止,它又分為RunTimeException(執行時異常)和CheckedException(檢查時異常)
      • CheckedException 是在編譯過程中發現的異常,編譯器要求 Java 程式必須捕獲或宣告所有編譯時異常。
      • RunTimeException 是程式執行過程中出現的異常,只會導致當前執行緒執行失敗。

常見的異常

  • 空指標異常
  • 陣列索引越界異常
  • 型別轉換異常

異常的抓拋機制

異常的抓取

  • try-catch-finally: 對程式碼塊中出現的異常進行抓取,同時處理異常。
  • thorws + 異常型別: 抓取方法體中出現的異常,但是不處理,而是向上丟擲給呼叫者。

異常的丟擲

  • 程式正在執行的過程中,一旦出現異常,就會在異常程式碼處生成一個對應異常類的物件並將此物件丟擲。一旦丟擲物件以後,其後面程式碼將不再執行。
  • throw 是丟擲一個手動建立的異常物件,而 throws 是加在方法上用於處理方法中出現的異常。

    圖片原文地址:> https://blog.csdn.net/weixin_45661472/article/details/123616906