equals는 일반 규약을 지켜 재정의하기 equals를 overriding하지 않는 경우 각 인스턴스가 본질적으로 고유함 인스턴스의 논리적 동치성 검사 불필요 상위 클래스의 equals가 하위 클래스에도 잘 맞음 클래스가 private이거나, package-private이어서 equals 호출 안함 equals를 overriding해야 하는 경우 논리적 동치성을 확인해야 하는 경우 equals 동치관계 구현 조건 반사성 : 객체는 자기 자신과 같아야 함 대칭성 : 두 객체는 서로에 대한 동치 여부에 동일한 답을 해야 함 추이성 : 첫번째 == 두번째 == 세번째 일관성 : 두 객체가 같다면 영원히 같아야 함 Non-null : 모든 객체가 null과 같지 않아야 함 equals 구현 방법 ==로 입력이..