[Effective Java 3/e] 아이템 49 - 매개변수가 유효한지 검사하라


아이템 49 - 매개변수가 유효한지 검사하라

자바의 null 검사 기능 사용하기

this.strategy = Objects.requireNonNull(strategy, "전략");

단언문을 사용한 매개변수 유효성 검사

private static void sort(long a[], int offset, int lenght) {
  assert a != null;
}

단언문 사용 시 장점

  • 실패하면 AssertionError를 던진다.
  • 런타임에 아무런 효과나 성능 저하가 없다.

정리

  • 메서드나 생성자를 작성할 때 그 매개변수들에 어떤 제약이 있을지 생각해야 한다
  • 그 제약들을 문서화하고 메서드 코드 시작 부분에 명시적으로 검사해야 한다.