Shallow Copy(얕은 복사)
실제 값이 아닌, '주소 값'을 복사하는 것
객체를 직접 대입하는 경우, 참조에 의한 할당이 이루어지므로 둘은 같은 데이터(주소)를 가지게 됩니다. 다시 말해서, 주소 값을 복사하기 때문에 참조하고 있는 실제값은 같습니다.
Deep Copy(깊은 복사)
'실제 값'을 새로운 메모리 공간에 복사하는 것
Deep Copy의 경우, 객체에 중첩된 객체까지 모두 복사하는데요. 메모리를 새로 할당하여 원본 객체를 복사하므로 별개의 객체가 되게 됩니다.