조슈아 블로크 님의 "Effective Java" 책을 정리한 포스팅 입니다.1. 예외는 진짜 예외 상황에만 사용하라코드를 try-catch에 작성하면 jvm이 적용할 수 있는 최적화가 제한됨특정 상태에서만 호출할 수 있는 상태 의존적 메서드를 제공하는 클래스는 상태 검사 메서드도 함께 제공해야 함2. 복구할 수 있는 상황에는 검사 예외를, 프로그래밍 오류에는 런타임 예외를 사용하라검사 예외호출하는 쪽에서 복구하리라 여겨지는 상황API 설계자는 검사 예외를 던져주어 사용자로 하여금 해당 상황에서 회복해달라 요구한 것 비검사 예외런타임 예외프로그래밍 오류전제조건이 지켜지지 않을 경우가 대다수적절한 에러 메시지를 뱉으며 중단됨RuntimeException 클래스 에러복구 불가능jvm 단에서 나는 에러 (자..