프로그래밍 전문가는 코드 재사용을 위해 노력할 뿐만 아니라 높은 수준으로 코드를 재사용한다.
이미 있는 예외를 사용하는 좋은 장점
· 배우기 쉽고 사용하기 편리한 API를 만들기 쉽다.
· 구현된 API는 가독성이 높아진다.
가장 많이 사용되는 예외
· IllegalArgumentException : 잘못된 인자를 던졌을 시
· IllegalStateException : 현재 객체 상태로는 호출할 수 없는 메서드를 호출 했을 때
· NullPointerException : null값을 받으면 안되는 인자에 null값이 전달 되었을 때
· ConcurrentModificationException : 하나의 스레드만 사용하도록 설계된 객체나 외부적인 동기화 수단과 함께 이용되어야 하는 객체를 여러 스레드가 동시에 변경하려 하는 경우에 발생하는 예외
· UnsupportOperationException : 어떤 객체가 호출된 메서드를 지원하지 않을 때 발생하는 예외
위의 표준 예외를 사용하기 위해서는 예외가 발생되는 조건이 반드시 일치해햐 한다. 예외는 상호 배제적이지 않기 때문에 이름만 보고 재사용하면 혼란을 줄 수 있다.
한 상황에 여러 에러를 발생할 수 있는 상황이 주어질 수가 있는데, 숫자를 입력 받는 메서드가 있다고 할 때 전달받은 인자 값이 너무 클 경우 IllegalArgumentException이 될 수 도 있고, 객체의 현재상태로는 메서드 호출을 할 수 없다는 뜻에서 IllegalStateException또한 발생할 수 도 있다.
'IT > Programming' 카테고리의 다른 글
<Effective Java> RULE 58 복구가능상태에는 점검지정 예외를 사용하고, 프로그래밍 오류에는 실행 지점 예외를 이용하라. (0) | 2023.04.26 |
---|---|
<Effective Java> RULE 59 불필요한 점검지정 예외 사용은 피하라 (0) | 2023.04.26 |
<Effective Java> RULE 61 추상화 수준에 맞는 예외를 던져라 (0) | 2023.04.26 |
<Effective Java> RULE 62 메서드에서 던져지는 모든 예외에 대해 문서를 남겨라 (0) | 2023.04.26 |
<Effective Java> RULE 63 어떤 오류인지를 드러내는 상세한 메세지를 담으라. (0) | 2023.04.26 |