Javaの例外処理の戦闘

例外処理を使用すると、 - 異常をキャプチャすることができるようにします

コード1

public class DealException
{
   public static void main( String[] args )
   {
      try
      // 检查这个程序块的代码
      {
         int arr[] = new int[5];
         arr[10] = 7;   // 在这里会出现异常
      }
      catch( ArrayIndexOutOfBoundsException e )
      {
         System.out.println( "数组超出绑定范围!" );
      }
      finally
      // 这个块的程序代码一定会执行
      {
         System.out.println( "这里一定会被执行!" );
      }
      System.out.println( "main()方法结束!" );
   }
}

2つの実行

数组超出绑定范围!
这里一定会被执行!
main()方法结束!

2を使用して例外処理は - 異常をキャプチャすることができません

コード1

public class DealException
{
   public static void main( String[] args )
   {
      try
      // 检查这个程序块的代码
      {
         int arr[] = new int[5];
         arr[10] = 7;   // 在这里会出现异常
      }
      catch( ArithmeticException e )
      {
         System.out.println( "算术异常" );
      }
      finally
      // 这个块的程序代码一定会执行
      {
         System.out.println( "这里一定会被执行!" );
      }
      System.out.println( "main()方法结束!" );
   }
}

2つの実行

这里一定会被执行!
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
    at DealException.main(DealException.java:9)

3説明

シーンキャッチされない例外のために、最終的には、ステートメントブロックが実行されますが、finallyブロックの後の文の言語が実行できない、処理するために、JVMに例外では、最後に実行を停止します。

おすすめ

転載: blog.csdn.net/chengqiuming/article/details/94828563