객체의 동일성
-
객체의 동일성과 동등성CS 2023. 7. 28. 00:50
코드를 짜며 객체끼리 비교하는 데 ==연산자로 똑같다는 결과가 나오지 않는 경우가 있었다. 분명 둘은 같은 값을 담고 있었는데도 말이다. 그래서 찾아보니 객체의 동등성과 동일성이라는 개념이 있었다. 이에 대해 알아보자. 동일성(Identity) 완전히 같다는 의미, 두 객체가 완전히 같다는 것을 의미한다. 그런데 이렇게 설명하면 뭔가 부족하다. 이를 위해 객체를 좀 더 살펴보자. [객체] 객체는 기본적으로 생성 시 메모리에 주소를 갖게 된다. 메모리에는 다양한 영역이 있지만 그중 Heap 영역에 클래스의 인스턴스들의 실제값이 저장된다. 예를 들어 아래와 같은 코드가 있다 Coffee coffee = new Coffee("star coffee"); 이때 생성된 coffee라는 변수명을 위한 공간은 메모리의..