Freigeben über


ICloneable Schnittstelle

Definition

Unterstützt das Klonen, wobei eine neue Instanz einer Klasse mit denselben Werten wie eine vorhandene Instanz erstellt wird.

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
Abgeleitet
Attribute

Hinweise

Mit ICloneable der -Schnittstelle können Sie eine angepasste Implementierung bereitstellen, die eine Kopie eines vorhandenen Objekts erstellt. Die ICloneable -Schnittstelle enthält ein Element, die Clone -Methode, die über die von Object.MemberwiseClonebereitgestellte Unterstützung für das Klonen hinaus verfügen soll. Weitere Informationen zum Klonen, tiefen und flachen Kopien und Beispielen finden Sie in der Object.MemberwiseClone -Methode.

Hinweise für Ausführende

Die ICloneable -Schnittstelle erfordert lediglich, dass Ihre Implementierung der Clone() -Methode eine Kopie der aktuellen Objektinstanz zurückgibt. Es gibt nicht an, ob der Klonvorgang eine tiefe Kopie, eine flache Kopie oder etwas dazwischen ausführt. Es ist auch nicht erforderlich, dass alle Eigenschaftswerte der ursprünglichen Instanz in die neue Instanz kopiert werden. Beispielsweise führt die Clone() -Methode eine flache Kopie aller Eigenschaften mit Ausnahme der IsReadOnly -Eigenschaft durch. Dieser Eigenschaftswert wird im geklonten Objekt immer auf false festgelegt. Da Aufrufer von Clone() nicht von der Methode abhängen können, die einen vorhersagbaren Klonvorgang ausführt, wird empfohlen, die ICloneable Implementierung nicht in öffentlichen APIs zu verwenden.

Methoden

Clone()

Erstellt ein neues Objekt, das eine Kopie der aktuellen Instanz darstellt.

Gilt für:

Weitere Informationen