CH9-4 · FLOW

Object 메서드의 계약 예제가 실행되는 순서

참조 동일성 빠른 확인에서 시작해 같은 필드로 hashCode 생성까지 값과 책임이 이동한다.

  1. 1
    참조 동일성 빠른 확인

    Object 구현은 사실상 ==와 같은 객체인지 비교합니다.

  2. 2
    구성 값으로 equals 비교

    equals가 true인 두 객체의 hashCode는 반드시 같아야 합니다.

  3. 3
    같은 필드로 hashCode 생성

    키를 넣은 뒤 equals와 hashCode에 쓰는 필드를 바꾸면 원래 버킷에서 찾지 못할 수 있습니다.

실행 순서 동일한 code를 가진 두 객체가 같은 hashCode와 equals 결과를 제공해 Set에 하나만 남습니다.