아이템 58. 복구 가능 상태에는 점검지정 예외를 사용하고, 프로그래밍 오류에는 실행지점 예외를 이용하라.
58. 복구 가능 상태에는 점검지정 예외를 사용하고, 프로그래밍 오류에는 실행지점 예외를 이용하라.
자바는 세가지 종류의 “throwable”을 제공한다.
- 점검지정 예외(checked exception) : 호출자(caller)측에서 복구할 것으로 여겨지는 상황에서 사용, 즉 클라이언트 측에서 복구 권한을 줌
- 실행시점 예외(runtime exception) : 프로그래밍 오류를 표현할 때는 실행시점 예외를 사용,
일반적으로 선행조건 위반(precondition violation)을 나타냄,
ArrayIndexOutOfBoundsExeption
- 에러(error) : JVM자원 부족(resource deficiency)이나 불변식 위반(invariant failure)등에 사용
사용자 정의 무점검 throwable은 RuntimeException의 하위 클래스로 만들어야 한다.