값 타입 : 인스턴스가 달라도 그 안에 값이 같으면 같은 것으로 봐야된다.
int 타입의 a == b는 true가 반환되는 반면, 객체 타입의 a == b는 false가 나온다.
- 동일성 (identity) 비교 : 인스턴스의 참조 값을 비교, == 사용
- 동등성 (equivalence) 비교 : 인스턴스 값을 비교, equals() 사용
!!! 값 타입은 a.equals(b)를 사용해서 동등성 비교를 해야한다.- 값 타입의 equals() 메서드를 적절하게 재정의하여 사용한다.
- equals의 default 값이 "==" 비교이다.