자바는 세 가지 종류의 'throwable'을 제공한다. 점검지정 예외(checked exception), 실행시점 예외(runtime exception), 그리고 오류(error)다.  점검지정 예외를 사용할 것인지 아니면 무점검 예외를 사용할 것인지에 대해 대한 가장 기본적인 규칙은 호출자 측에서 복구할 것으로 여겨지는 상황에 대해서는 점검지정 예외를 이용해야 한다는 것이다. 따라서 메서드에 선언된 점거지정 예외는 메서드를 호출하면 해당 예외와 관계된 상황이 발생할 수 있음을 API 사용자에게 알리는 구실을 한다.

 

무점검 throwable에는 런타임 예외와 오류 두가지있으며, 동작 방식은 같다. 둘다 catch로 처리할 필요가 없으며, 일반적으로는 처리해서도 안된다.프로그램이 무점검 예외나 오류를 던진다는 것은 복구가 불가능한 상황에 직면했다는 뜻이다.이런 예외를 catch하지 않는 스레드는 적절한 오류메세지를 출력하며 종료된다.


 프로그래밍 오류를 표현할 때는 실행시점 예외를 사용해라. 예를 들어 배열이용에 관한 규약을 위반하면 예외가 발생하게 된다. 

요약

복구 가능한 상태에는 점검지정 예외를 사용하고, 프로그래밍 오류를 나타내고 싶을 때는 실행시점 예외를 사용하라는 것이다. 


+ Recent posts