본문 바로가기

복사1

깊은 복사(Deep Copy)와 얕은 복사(Shallow Copy)의 이해 -자바에서 객체를 복사하는 두 가지 방법에 대해 알아본다. 디자인패턴 중 프로토타입 패턴을 학습하면서 깊은 복사, 얕은 복사의 개념이 나왔다. 이 기회에 제대로 알아볼 생각으로 글을 쓴다. 대충 알고 있었는데 예시를 작성하며 내부 동작 등을 제대로 파악해보려고 한다. 얕은 복사와 깊은 복사의 개념 얕은 복사(Shallow Copy)란 객체의 실제 값이 아닌 참조값(주소값)을 복사하는 것이다. 반면 깊은 복사(Deep Copy)란 참조값이 아닌 인스턴스를 새로 복사하여 아예 실제값을 복사하는 것이다. 밑의 예제로 설명하는 것이 더 이해가 쉽기 때문에 바로 예제로 들어간다. 얕은 복사(Shallow Copy) 우선 Fruit이라는 클래스를 다음과 같이 만든다. Fruit.java public class Fr.. 2021. 3. 15.