hashCode는 일관성이 유지되야하고 equals와 일치해야 한다.
equals에서 처리된 결과를 기준으로 hashCode를 살펴봤을때 상이하면 안된다는것
hashCode는 기본적으로 equals에서 비교에 사용될것을 기반으로 만들어야한다.
예) 엔티티 특성이라면 id만 활용
만일 코틀린에서 해시코드를 직접 생산할일이 있다면 다음과 같이 표준을 활용하자
// 단일
Objects.hashCode("")
// 복수
Objects.hash(1,2)
그리고 data class를 사용하는 경우에는 기본적으로 hashCode와 equals가 재정의된다.