ICloneable 인터페이스

정의

기존 인스턴스와 동일한 값을 가진 클래스의 새 인스턴스를 만드는 복제를 지원합니다.

public interface class ICloneable
public interface ICloneable
[System.Runtime.InteropServices.ComVisible(true)]
public interface ICloneable
type ICloneable = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type ICloneable = interface
Public Interface ICloneable
파생
특성

설명

인터페이스 ICloneable 를 사용하면 기존 개체의 복사본을 만드는 사용자 지정된 구현을 제공할 수 있습니다. 인터페이스에는 ICloneable 제공된 것 이상으로 복제 지원을 제공하기 위한 하나의 멤버 Clone 인 메서드가 Object.MemberwiseClone포함되어 있습니다. 복제, 깊이 및 단순 복사본 및 예제에 대한 자세한 내용은 메서드를 Object.MemberwiseClone 참조하세요.

구현자 참고

인터페이스를 ICloneable 사용하려면 메서드 구현에서 Clone() 현재 개체 인스턴스의 복사본을 반환해야 합니다. 복제 작업에서 딥 카피, 단순 복사본 또는 그 사이에 있는 항목을 수행하는지 여부는 지정하지 않습니다. 또한 원래 인스턴스의 모든 속성 값을 새 인스턴스에 복사할 필요가 없습니다. 예를 들어 메서드는 Clone() 속성을 제외한 모든 속성의 단순 복사본을 IsReadOnly 수행합니다. 항상 이 속성 값을 false 복제된 개체로 설정합니다. 호출자는 Clone() 예측 가능한 복제 작업을 수행하는 메서드에 의존할 수 없으므로 공용 API에서 구현하지 않는 것이 ICloneable 좋습니다.

메서드

Name Description
Clone()

현재 인스턴스의 복사본인 새 개체를 만듭니다.

적용 대상

추가 정보