>  기사  >  Java  >  Java 예제 - 다중 예외 처리(다중 catch)

Java 예제 - 다중 예외 처리(다중 catch)

黄舟
黄舟원래의
2017-02-04 10:17:431795검색

예외 처리:

1. 예외를 선언할 때 처리가 더 구체적일 수 있도록 더 구체적인 예외를 선언하는 것이 좋습니다.

2. 파티가 여러 예외를 선언하면 여러 catch 블록에 해당합니다. 여러 catch 블록의 예외에 상속 관계가 있으면 상위 클래스 예외 catch 블록이 맨 아래에 배치됩니다.

다음 예에서는 여러 catch 블록을 처리하는 방법을 보여줍니다. 예외:

/*
 author by w3cschool.cc
 ExceptionDemo.java
 */

class Demo  
{  
    int div(int a,int b) throws ArithmeticException,ArrayIndexOutOfBoundsException//在功能上通过throws的关键字声明该功能可能出现问题  
    {  
        int []arr = new int [a];  
  
        System.out.println(arr[4]);//制造的第一处异常  
  
        return a/b;//制造的第二处异常  
    }  
}  
  
  
class ExceptionDemo  
{  
    public static void main(String[]args) //throws Exception  
    {  
        Demo d = new Demo();  
  
        try  
            {  
                int x = d.div(4,0);//程序运行截图中的三组示例 分别对应此处的三行代码  
                //int x = d.div(5,0);  
                //int x = d.div(4,1);  
                System.out.println("x="+x);   
        }  
        catch (ArithmeticException e)  
        {  
            System.out.println(e.toString());  
        }  
        catch (ArrayIndexOutOfBoundsException e)  
        {  
            System.out.println(e.toString());  
        }  
        catch (Exception e)//父类 写在此处是为了捕捉其他没预料到的异常 只能写在子类异常的代码后面  
                            //不过一般情况下是不写的   
        {  
            System.out.println(e.toString());  
        }  
          
  
  
        System.out.println("Over");  
    }  
  
}

위 코드 실행 결과는 다음과 같습니다.

java.lang.ArrayIndexOutOfBoundsException: 4
Over

위는 Java 인스턴스 - 다중 예외 처리(다중 catch) 내용입니다. PHP 중국어 홈페이지(www.php.cn)로!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.