인프런 커뮤니티 질문&답변
강의노트 내용이 이해가 되지 않아서 문의드립니다.
작성
·
19
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 조성경님.
질문해주신 부분에 대한 설명을 드리겠습니다. 객체지향 프로그래밍에서 ‘주소값을 변경한다’는 표현은, 객체가 참조하고 있는 주소(메모리 위치)를 바꾸겠다는 의미가 아니라, 객체의 필드 값을 변경하겠다는 의미일 가능성이 높습니다. 특히, Address라는 클래스에서 address라는 필드를 갖고 있다면 필드의 값을 변경하는 것을 의도합니다.
b.setValue("부산"): 해당 메서드는b가 참조하고 있는 객체의value필드를 ‘서울’에서 ‘부산’으로 변경합니다.b.setAddress(new ImmutableAddress("부산")): 불변객체인 경우, 필드 값을 직접 변경할 수 없기에 새로운Address객체를 생성하여 할당하는 방식으로 주소를 변경합니다.
관련하여 유사한 질문과 답변이 인프런 질문 게시판에 있습니다. 아래 링크를 참고하시면 더 많은 정보를 얻으실 수 있습니다:
위 답변 링크를 통해 불변 객체에 대해서 더 많은 통찰을 얻을 수 있을 것입니다. 불변 객체를 다루는 이유와, 불변 객체를 다루는 방법에 대한 이해가 계속해서 도움이 되실 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





