이미 있는 예외들을 재사용하면 좋은 점이 많다.

  • 배우기 쉽고 사용하기 편리한 API를 만들 수 있다. 다른 프로그래머들도 친숙하고, 널리 퍼진 관습을 따르기 때문이다
  • 가독성 높은 API가 될 수 있다. 잘 모르는 예외가 뒤섞여 있지 않기 떄문이다.
  • 예외 클래스 개수를 줄이면 프로그램의 메모리 요구량이 줄어들고, 클래스를 로딩하는 시간도 줄어든다는 것

예외 

용례 

IllegalArgumentException 

null이 아닌 인자의 값이 잘못되었을  때

IllegalStateException 

객체 상태가 메서드 호출을 처리하기에 적절치 않을 때 

NullPointerException 

null 값을 받으면 안 되는 인자에 null이 전달 되었을 때 

IndexOutOfBoundsException 

인자로 주어진 첨자가 허용 범위를 벗어 났을 때 

ConcurrentModificationException 

병렬적 사용이 금지된 객체에 대한 병렬 접근이 탐지 되었을 때 

UnsupportedOperationException 

객체가 해당 메서드를 지원하지 않을 때 


재사용 할 수 있는 예외라 생각된다면, 재사용하면 된다. 하지만 예외를 발생시키는 조건이 해당 예외의 문서에 기술 된 것과 일치해야 한다. 애매한 상황에 대한 예외처리를 해야 할 때, 어떤 예외를 재사용하면 좋을지 결정하는 것은 엄밀한 과학적 절차를 따르지 않는다.

+ Recent posts