JAVA
2023. 10. 27.
[JAVA] equals(), hashCode() 재정의(동등성과 동일성)
개요 각 메서드를 보기 앞서 개념을 먼저 살펴보자. 동등성 동등하다는 것은 논리적인 지위가 같다는 것을 뜻한다. 그리고 이 논리적인 지위는 개발자가 결정한다. 아래 Person 클래스로 예를 들어보자. class Person{ String name; String personality; } 두 Person이 있다고 할 때 이름만 같을 경우 두 Person을 같다고 판단할지, 성격도 같아야 두 Person이 같다고 판단할지 여기에 대한 기준은 개발자가 정한다. 이렇게 논리적인 기준이 같은지 판단하는 것을 동등성 비교라고 한다. 그리고 java 메서드로는 equals()를 사용한다. 동일성 동일하다는 것은 모든 것이 일치한다는 것을 뜻한다. '모든 것'에는 내부 값, 주소 등이 포함된다. java에서는 == ..