JAVA 객체 복사 방식 (깊은 복사 vs 얕은 복사)
2019. 10. 23. 01:34
왠만하면 프로젝트가 어느 정도 마무리되고 난 후 배운 것들을 블로그에 정리하는데, 이건 정말 모르고 사용하면 꽤나 고생할 것 같아서(이미 고생하긴 했다....;;) 까먹기 전에 정리해두려고 한다. 객체를 복사할 때 어떤 방식을 사용하는가? 보통 자바에서 객체를 복사/복제(clone)을 한다고 하면, 다음과 같이 쓰곤 한다. CustomClass object = new CustomClass(); CustomClass copied = object; 위의 예시는 안전한 복사가 아니다 (경우에 따라). ArrayList를 예시로 들어보겠다. 리스트 복사! 하면 가장 먼저 떠오르는 방식이 일반적으로 아래와 같은 방식일 것이다. ArrayList classList = new ArrayList(); classList..