溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java異常處理操作實(shí)例分析

發(fā)布時間:2021-11-19 16:50:02 來源:億速云 閱讀:121 作者:iii 欄目:編程語言

本篇內(nèi)容介紹了“Java異常處理操作實(shí)例分析”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

一 異常處理的使用——能夠捕獲到異常

1 代碼

public class DealException{  public static void main( String[] args )  {   try   // 檢查這個程序塊的代碼   {     int arr[] = new int[5];     arr[10] = 7;  // 在這里會出現(xiàn)異常   }   catch( ArrayIndexOutOfBoundsException e )   {     System.out.println( "數(shù)組超出綁定范圍!" );   }   finally   // 這個塊的程序代碼一定會執(zhí)行   {     System.out.println( "這里一定會被執(zhí)行!" );   }   System.out.println( "main()方法結(jié)束!" );  }}

2 運(yùn)行

數(shù)組超出綁定范圍!這里一定會被執(zhí)行!main()方法結(jié)束!

二 異常處理的使用——不能夠捕獲到異常

1 代碼

public class DealException{  public static void main( String[] args )  {   try   // 檢查這個程序塊的代碼   {     int arr[] = new int[5];     arr[10] = 7;  // 在這里會出現(xiàn)異常   }   catch( ArithmeticException e )   {     System.out.println( "算術(shù)異常" );   }   finally   // 這個塊的程序代碼一定會執(zhí)行   {     System.out.println( "這里一定會被執(zhí)行!" );   }   System.out.println( "main()方法結(jié)束!" );  }}

2 運(yùn)行

這里一定會被執(zhí)行!Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10 at DealException.main(DealException.java:9)

3 說明

對于未捕獲到異常場景,finally語句塊會執(zhí)行,但finally語言塊之后的語句不能執(zhí)行,將異常交給JVM去處理,最后停止程序運(yùn)行。

三 異常對象ex的使用

1 代碼

public class excepObject{  public static void main( String[] args )  {   try   {     int arr[] = new int[5];     arr[10] = 7;   }   catch( ArrayIndexOutOfBoundsException ex )   {     System.out.println( "數(shù)組超出綁定范圍!" );     System.out.println( "異常:" + ex ); // 顯示異常對象e的內(nèi)容      // ex.printStackTrace();   }   System.out.println( "main()方法結(jié)束!" );  }}

2 運(yùn)行

數(shù)組超出綁定范圍!異常:java.lang.ArrayIndexOutOfBoundsException: 10main()方法結(jié)束!

四 通過多個catch捕獲異常

1 代碼

public class arrayException {  public static void main( String args[] ) {    System.out.println("-----A、計算開始之前");    try {      int arr[] = new int[5];      ;      arr[0] = 3;      arr[1] = 6;      arr[1] = 0; // 除數(shù)為0,有異常      arr[10] = 7; // 數(shù)組下標(biāo)越界,有異常      int result = arr[0] / arr[1];      System.out.println("------B、除法計算結(jié)果:" + result);    } catch (ArithmeticException ex) {      ex.printStackTrace();    } catch (ArrayIndexOutOfBoundsException ex) {      ex.printStackTrace();    } finally {      System.out.println("-----此處不管是否出錯,都會執(zhí)行?。?!");    }    System.out.println("-----C、計算結(jié)束之后。");  }}

2 運(yùn)行

-----A、計算開始之前java.lang.ArrayIndexOutOfBoundsException: 10 at arrayException.main(arrayException.java:19)-----此處不管是否出錯,都會執(zhí)行?。?!-----C、計算結(jié)束之后。

“Java異常處理操作實(shí)例分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI