> Java > Java시작하기 > Java에서 깊은 복사와 얕은 복사의 차이점은 무엇입니까?

Java에서 깊은 복사와 얕은 복사의 차이점은 무엇입니까?

王林
풀어 주다: 2020-07-04 16:58:34
앞으로
3349명이 탐색했습니다.

Java에서 깊은 복사와 얕은 복사의 차이점은 무엇입니까?

차이 분석:

(추천 학습: java 입문 프로그램)

Shallow copy

복사된 객체의 모든 변수는 원본 객체와 동일한 값을 포함하며, 다른 모든 객체에 대한 참조는 여전히 원래 개체를 가리킵니다.

즉, 얕은 복사본은 참조하는 개체가 아닌 고려 중인 개체만 복사합니다.

딥 카피

복사된 객체의 모든 변수는 다른 객체를 참조하는 변수를 제외하고는 원본 객체와 동일한 값을 포함합니다. 다른 개체를 참조하는 변수는 원래 참조된 개체가 아닌 복사된 새 개체를 가리킵니다.

즉, Deep Copy는 복사된 개체가 참조하는 모든 개체를 복사합니다.

(추천 비디오 튜토리얼: java 비디오 튜토리얼)

클래스를 다음과 같이 정의하세요:

class Test {
    public int i;
    public StringBuffer s;
}
로그인 후 복사

다음 그림은 이 클래스의 객체를 복사할 때 얕은 복사와 깊은 복사의 차이점을 보여줍니다:

Java에서 깊은 복사와 얕은 복사의 차이점은 무엇입니까?

위 내용은 Java에서 깊은 복사와 얕은 복사의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿