이렇게 throws 키워드를 사용해 ArithmeticException이라는 오류를 넘긴다고 작성했습니다. 이 메서드에서 발생하는 오류를 메서드 내에서 처리하지 않고 메서드를 호출한 쪽에서 처리할 수 있도록 한 것입니다.
이때도 예외를 하나만 넘길 수 있는 것이 아니라 다음과 같이 ,(콤마)를 사용해 예외를 여러 개 보낼 수 있습니다.
public static int divide(int i, int j) throws ArithmeticException,ClassCast
Exception{
int k = i/j;
return k;
}
혹은 49장에서처럼 Exception이라고 하면 모든 Exception의 상위 클래스이므로 throws Exception이라고 넘겨주면 이 메서드에서 발생하는 모든 예외를 넘길 수 있습니다.
public static int divide(int i, int j) throws Exception{
int k = i/j;
return k;
}
다시 정리하겠습니다. 메서드 선언부 뒤쪽에 ‘throws + 발생할 예외’를 적습니다. 예제로 다시 돌아와서 divide 메서드는 ArithmeticException이 발생하므로 divide 메서드를 호출하는 쪽에서 예외를 처리하라는 의미입니다.