首頁> Java> java教程> 主體

Java 中的異常處理

WBOY
發布: 2024-07-24 10:52:41
原創
844 人瀏覽過

Exception Handling In Java

當你執行Java程式碼或程式時,它要麼編譯並執行,要麼拋出錯誤。當程式碼拋出異常時,它是錯誤或異常的結果。

錯誤更嚴重。它發生在程式碼範圍之外,但在應用程式運行的環境內。該程式預計不會捕獲並處理錯誤。

一些錯誤範例是

  • 記憶體不足錯誤
  • 虛擬機器錯誤
  • StackOverFlowError

異常發生在程式碼範圍內。它也稱為執行錯誤,這意味著它在程式碼執行期間發生。程式設計師應該捕獲並處理程式中的異常。

這篇文章將更專注於異常和運行時錯誤。您將了解有關異常以及如何處理 Java 程式中的異常錯誤的所有資訊。

Java 中的執行錯誤類型

Java中存在三種類型的執行錯誤。這是每個人的細分

。編譯時錯誤

這種類型的錯誤稱為編譯錯誤或檢查錯誤。 Java 程式在編譯階段會拋出此程式碼。

換句話說,這個錯誤是在Javac程式碼編譯為字節碼的時候發生的。編譯時錯誤通常是由程式碼語法錯誤引起的。

例如,當程式設計師未能在語句末尾加上分號或未能在列印前初始化變數時。

雷雷

。運行時錯誤

運行時錯誤也稱為異常錯誤或未經檢查的錯誤。它在程式執行時發生。程式碼可以編譯,但在運行時會拋出錯誤。

運行時錯誤又可以進一步分為內建異常和使用者定義異常。內建異常的範例包括:

  • ArrayIndexOutOfBoundsException
  • 算術異常
  • 文件找不到異常
  • 空指針異常

例如,如果使用者輸入 int 而不是字串或插入大於陣列大小的值。

雷雷

。邏輯錯誤

也稱為語意錯誤,如果程式的邏輯輸出有錯誤,就會發生這種錯誤。例如,3 + 3 顯示輸出 7,或當您登入帳戶並登陸另一個個人資料時。

編譯時錯誤是最容易捕獲的,因為你的 IDE 總是會向程式設計師指出這個錯誤。大多數時候邏輯錯誤是最難看到的錯誤,因為程式碼不會拋出編譯時或執行時錯誤。

異常處理的概念

異常處理用於捕獲程式中的錯誤並維持程式執行的正常流程。通常,一旦程式拋出錯誤,程式碼就會停止執行。

提前捕獲並處理錯誤將使程式能夠跳過有錯誤的程式碼區塊並繼續執行程式的其餘部分。

異常處理方法:

Try – Catch – Final – Throw – Throws是Java中異常處理的方法清單。讓我們透過範例詳細分析它們:

。嘗試

Try 用於封閉可能拋出異常的一行或幾行程式碼。還有一個嵌套的 try,它是帶有內部 try 區塊的 try。他們有相同的目的。

文法

雷雷

。抓住

catch 是一段程式碼,用於捕捉 try 區塊中拋出的錯誤。

文法

雷雷

多個捕捉區塊

雷雷

。最後

最後是一個可選的程式碼區塊,通常放置在 try 和 catch 程式碼區塊之後。它用於執行重要的程式碼。無論程式是否拋出錯誤,finally 區塊都會被執行。

文法

雷雷

。丟

Throw 是一個關鍵字,用於在方法或程式碼區塊內引發異常。

文法

雷雷

。投擲

與 throw 關鍵字不同, throws 關鍵字不用於拋出例外。但是,它指定該方法可能存在異常。 Throws 用於方法簽名中,而不是方法內部。

處理異常的最佳實踐

  1. 一個 try 區塊可以有多個語句(程式碼行)。最好建立多個 catch 區塊來捕獲每個語句中的錯誤。

  2. 如果您使用多個 catch 區塊,請務必指定異常類型。

  3. 如果一個try區塊中有多個語句,並且你不知道出錯的語句,可以在其他異常的末尾創建一個最終的一般異常來捕獲未知的錯誤。

  4. 始終將通用異常 catch 區塊放在其他自訂異常 catch 區塊的末端。

以上是Java 中的異常處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!