異常的處理機制 捕獲和丟擲

2021-08-19 11:27:13 字數 914 閱讀 7855

jvm 預設是如何處理異常的呢?

main函式收到乙個問題,有兩種處理方式

1.自己解決

2.自己解決不了,交給jvm解決

jvm有乙個預設的異常處理機制,就是將該異常顯示出來

包括 異常名稱、資訊、出現位置

異常的兩種處理方式:

1.  try ... catch .. finally 捕獲並處理  

try ...catch

try ... catch ..finally

格式:trycatch(異常型別  變數名)finally

2.  throws丟擲

格式:訪問許可權修飾符   返回值型別   方法名(引數列表) throws 異常1,異常2  ... 異常n

區別:try  ... catch  自己處理 程式可以繼續執行

throws 誰呼叫我  誰處理我  程式會被終止  不會繼續執行

throwable中常見的方法

string getmessage() 返回此throwable的詳細描述

string tostring() 返回此throwable的簡短描述

void printstacktrace() 將throwable堆疊追蹤資訊列印   jvm預設呼叫此方法顯示資訊

try ... catch 方式處理異常的特殊情況  --> 多異常情況

1.catch異常時,建議catch更具體的異常,這樣處理起來可以更有針對性

2.try後面可以跟多個catch 小的異常放前面  大的異常放後面

在 jdk1.7之後 ,可以乙個catch處理多個異常  中間用  |  分隔

finally 的特點

被finally控制的語句體,一定會被執行

finally 的作用

用於釋放資源   io流   和資料庫連線會用 

捕獲和丟擲異常

異常處理5個關鍵字 try catch finally throw throws 不捕獲異常 public class test 捕獲異常,finally 可以不要,用於 假設io資源關閉,就會用到。public class test catch arithmeticexception e fina...

丟擲異常和捕獲異常 多捕獲和最終重新丟擲的異常處理

丟擲異常和捕獲異常 joseph d.darcy宣布,在langtools團隊成員maurizio cimadamore開發的多捕獲實現成功的經驗之後,具有多捕獲和最終重新丟擲的改進的異常處理將成為即將到來的jdk 7構建的一部分。當前,使用者可以將變更集應用於jdk 7 langtools儲存庫的...

異常處理機制

異常處理的三個步驟 檢查異常,丟擲異常,處理異常 異常處理基本原理 把需要檢測的程式放到try塊中,把異常處理的程式放在catch塊中。如果執行乙個函式出現了異常,可以丟擲異常資訊。然後查詢try塊下面的catch塊是否可以處理該異常。如果該函式不處理該異常,將傳遞給它的上一級函式 呼叫函式 如果它...