API 설계자가 예외를 발생할 수 있다고 선언했다면, 그것은 API를 이용할 프로그래머에게 무언가를 알리려는 것이다. 무시하지마라! . 호출 대상 메서드를 빈 CATCH 블록이 붙은 TRY 문으로 감싸면, 예외를 쉽게 무시할 수 있다.
빈 catch 블록은 예외를 선언학 목적,즉 예외적 상황을 반드시 처리하도록 강제한다는 목적에 배치된다. 예외를 무시하는 것은 화재 경보를 무시하는 것이나 같다. 정말로 불이 났는지 아무도 확인할 수 없도록 만드는 것이다. 적어도 catch 블록 안에는 예외를 무시해도 괜찮은 이유라도 주석을 남겨놔야 한다. 또 정말로 무시해도 되는 상황이라면 로그를 남겨서, 이러한 경우가 많이 발생할 경우 수정할 수 있도록이라도 해야한다.
빈 catch 블ㄹ록으로 예외를 무시하는 프로그램은 오류가 생겨도 조용히 실행을 계속한다. 그러다 어느 순간, 오류와는 아무 상관없도 없는 지점에서 불시에 죽어버린다. 예외를 적절히 처리하면 오류로 프로그램이 죽는 것을 피할 수 있다.
'개발서적 > 이펙티브자바' 카테고리의 다른 글
[병행성]규칙67.과도한 동기화는 피하라. (0) | 2017.05.08 |
---|---|
[병행성]규칙66. 변경 가능 공유 데이터에 대한 접근은 동기화하라 (0) | 2017.05.07 |
[예외]규칙64. 실패 원자성 달성을 위해 노력하라 (0) | 2017.05.07 |
[예외]규칙63. 어떤 오류인지 드러내는 정보를 상세한 메세지에 담으라 (0) | 2017.05.07 |
[예외]규칙62.메서드에서 던져지는 모든 예외에 대해 문서를 남겨라 (0) | 2017.05.07 |