더북(TheBook)

객체 참조를 담은 변수를 다른 변수에 할당하면 같은 객체 참조를 두 개 갖는다.

ArrayList<String> people = friends;

    // 이제 people friends는 같은 객체를 참조한다.


공유된 객체를 변경하면 두 참조로 해당 변경 사실을 알아낼 수 있다. 다음 호출을 보자.

people.add("Paul");


이제 배열 리스트 people의 크기는 2가 되는데, friends도 마찬가지다(그림 2-2 참고). (물론 기술적으로 보면 people이나 friends의 크기가 2라는 것은 사실이 아니다. 결국 peoplefriends는 객체가 아니다. 크기가 2인 배열 리스트 객체의 참조다.)

093

▲ 그림 2-2 같은 객체에 대한 두 참조

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.