ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] equals 와 hashCode 재정의 시 주의사항
    카테고리 없음 2019. 5. 10. 23:46

    equals는 일반 규약을 지켜 재정의하라

    • Object클래스의 final이 아닌 메서드(equals, hashCode, toString, clone, finalize)는 모두 재정의(overriding)을 염두에 두고 설계
    • equals를 적절하게 재정의하는 것은 매우 주의가 필요
    • equals를 재정의하지 않은 경우 클래스의 인스턴스는 오직 자기 자신과만 같음

    equals를 재정의하려거든 hashCode도 재정의하라

    • 논리적으로 같은 객체는 같은 hashCode를 반환
    • equals에 의해 같음에 대한 정의가 바뀐 경우 hashCode도 재정의 필요

    출처 : 이펙티브 자바 3/E

    댓글

Designed by Tistory.