日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java中的异常处理语句_Java中实现异常处理的基础知识

發布時間:2025/3/12 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java中的异常处理语句_Java中实现异常处理的基础知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java中實現異常處理的基礎知識

異常?(Exception):發生于程序執行期間,表明出現了一個非法的運行狀況。許多JDK中的方法在檢測到非法情況時,都會拋出一個異常對象。

例如:數組越界和被0除。

源代碼示例:

packageyanzheng;

//關于異常??2015.11.11

importjavax.swing.*;

public?classAboutException?{

public?static?voidmain(String[]args)

{

int?i=1,j=0,k;

//???k=i/j;????//此句會拋出異常,顯示被0除

try

{

k=i/j;//?Causes?division-by-zero?exception

//throw?new?Exception("Hello.Exception!");

}

catch(?ArithmeticExceptione)//捕獲類型為算術異常,捕獲對象為e,算數異常就比如被0除這種情況

{

System.out.println("被0除.??"+e.getMessage());

//e.getMessage()這句是包中的一個類,去掉也行

}

/*Exception為所有的異常類型.使用catch語句,只能捕獲Exception類及其子類的對象。

因此,一個捕獲Exception對象的catch語句塊可以捕獲所有“可捕獲”的異常。*/

catch(Exceptione)

{

if(e?instanceofArithmeticException)

//instanceof為如果e可轉換為ArithmeticException這種類型

System.out.println("被0除");

else

{

System.out.println(e.getMessage());

}

}

finally//finally語句會被執行

{

JOptionPane.showConfirmDialog(null,"OK");

}

}

}

異常處理的目的是依據實際情況提供不同的錯誤應對策略與手段,使程序更穩定,更安全。

異常處理的主要用途是提供準確的錯誤消息,解釋失敗的原因、位置和錯誤類型等,同時提供一定的恢復能力,盡可能地保證數據完整性不被破壞,并讓程序能繼續運行。

Java中的異常捕獲語句

Java?中所有可捕獲的異常都派生自?Exception?類。

使用Java異常處理機制

*把可能會發生錯誤的代碼放進try語句塊中。

*當程序檢測到出現了一個錯誤時會拋出一個異常對象。異常處理代碼會捕獲并處理這個錯誤。catch語句塊中的代碼用于處理錯誤。

*當異常發生時,程序控制流程由try語句塊跳轉到catch語句塊。

*不管是否有異常發生,finally語句塊中的語句始終保證被執行。

*如果沒有提供合適的異常處理代碼,JVM將會結束掉整個應用程序。

JDK中與異常相關的類

Java中的異常分類

Throwable類有兩個直接子類:

Exception:出現的問題是可以被捕獲的;

Error:系統錯誤,通常由JVM處理。

可捕獲的異常又可以分為兩類:

(1)check異常:直接派生自Exception的異常類,必須被捕獲或再次聲明拋出

(2)runtime異常:派生自RuntimeException的異常類。使用throw語句可以隨時拋出這種異常對象:

throw?new?ArithmeticException(…);

異常的“多態”特性

*可以有多個catch語句塊,每個代碼塊捕獲一種異常。在某個try塊后有兩個不同的catch塊捕獲兩個相同類型的異常是語法錯誤。

*使用catch語句,只能捕獲Exception類及其子類的對象。因此,一個捕獲Exception對象的catch語句塊可以捕獲所有“可捕獲”的異常。

*將catch(Exception?e)放在別的catch塊前面會使這些catch塊都不執行,因此Java不會編譯這個程序。

“finally”的功用

*資源泄露:當一個資源不再被某應用程序使用,但此程序并未向系統聲明不再使用此資源時發生這種情況

*finally語句塊主要用于解決資源泄露問題,它位于catch語句塊之后,JVM保證它們一定執行。

*注意:finally語句塊中也可能發生異常,如果這種情況發生,先前的異常被放棄。

總結

以上是生活随笔為你收集整理的java中的异常处理语句_Java中实现异常处理的基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。