아이템10. equals는 일반 규약을 지켜 재정의하라. 언제 사용할까 ? 논리적 동치성을 확인해야 할 때 값 클래스(String, Integer 등) 등 객체가 같은지가 아니라 값이 같은지 알고 싶을 때 다음 상황 중 하나에 해당하면 재정의 하지 않는 것이 최선. 각 인스턴스가 본질적으로 고유하다. 인스턴스의 ‘논리적 동치성’ 을 검사할 일이 없다. 상위 클래스에서 재정의한 equals 가 하위 클래스에도 딱 들어맞는다. 클래스가 private 이거나 package-private 이고 equals 메서드를 호출할 일이 없다. 오버라이딩 시 고려 사항: 비교 대상 필드 모두 비교 null 체크 반사성(reflexivity): 자신과 자신을 비교했을 때 true 반환 대칭성(symmetry): a.equa..