얕은 복사

    [Java] 얕은 복사(Shallow Copy), 깊은 복사(Deep Copy)

    Java 얕은 복사(Shallow Copy), 깊은 복사(Deep Copy) 배열의 복사에는 얕은 복사(Shallow Copy)와 깊은 복사(Deep Copy)가 있다. 두 복사의 큰 차이는 다음과 같다. 복사되는 배열 a와 a를 복사한 배열 b가 있을 때, 얕은 복사는 하나의 배열의 주소를 a와 b가 모두 가리키고 있다. 같은 배열을 가리키고 있기에, 한쪽 배열에서 수정이 일어나면 나머지 다른쪽 배열에서도 수정이 반영된다. 깊은 복사는 a와 b 모두 각각 다른 배열을 가리키고 있다. 따라서, 한쪽 배열에서 수정이 일어난다 하여도, 다른쪽 배열에 아무런 영향을 끼치지 못한다. 얕은 복사(Shallow Copy) 대입 연산자 =는 얕은 복사를 수행한다. 1차원 배열이든 다차원 배열이든 똑같다. 다음 예제를..