이전 이야기 : 복구할 수 있는 상황에는 검사 예외를, 프로그래밍 오류에는 런타임 예외를 사용하라
검사 예외는 개발자가 직접 명시해서 처리를 해야 한다!!
if(obj.actionPermitted(args)) { //actionPermitted는 예외 반환 함수
obj.action(args);
} else {
... // 예외상황 대처
}
만일 이 코드는 무조건 성공이야! 라고 확신할 수 있다면..아래코드만 작성해도 무방
obj.action(args);
개발자가 문제가 발생했을 때 직접 처리 가능한 것이라면 검사 예외(try절사용)를 처리할 방안이 없다면 비검사 예외사용!