== 와 equals() 의 차이점은 무엇인가요?
- 결론적으로 == 연산자는 메모리 주소를 비교하고, equals() 메서드는 내용(값)을 비교한다는 점에서 차이가 있습니다.
- == 는 두 객체의 메모리 주소를 비교하여 두 객체가 동일한지 검증하는 연산자입니다.
- 두 객체의 메모리 주소가 동일한 경우에만 True 를 반환합니다.
- equals() 는 객체들 간의 내용적인 값을 비교하여 동등성을 검증하는 메서드입니다.
- 두 객체의 값이 동일한 경우에 True 를 반환합니다.
- equals() 메서드는 자바의 모든 객체가 공통적으로 상속하고 있는 Object 클래스에 명시된 스펙이기 때문에, 객체의 클래스에 따라 재정의할 수 있습니다.