ICloneable Rozhraní

Definice

Podporuje klonování, které vytvoří novou instanci třídy se stejnou hodnotou jako existující instance.

public interface ICloneable
[System.Runtime.InteropServices.ComVisible(true)]
public interface ICloneable
Odvozené
Atributy

Poznámky

Rozhraní ICloneable umožňuje poskytnout vlastní implementaci, která vytvoří kopii existujícího objektu. Rozhraní ICloneable obsahuje jeden člen, metodu Clone , která je určena k poskytování podpory klonování nad rámec podpory poskytované nástrojem Object.MemberwiseClone. Další informace o klonování, hlubokých a mělkých kopiích a příklady najdete v Object.MemberwiseClone metodě .

Poznámky pro implementátory

Rozhraní ICloneable jednoduše vyžaduje, aby implementace Clone() metody vrátila kopii aktuální instance objektu. Neurčí, zda operace klonování provádí hloubkovou kopii, mělkou kopii nebo něco mezi tím. Nevyžaduje ani zkopírování všech hodnot vlastností původní instance do nové instance. Metoda například Clone() provádí mělkou kopii všech vlastností s výjimkou vlastnosti ; v klonovaném objektu IsReadOnly vždy nastaví tuto hodnotu vlastnosti na false . Vzhledem k tomu, že ICloneable volající Clone() nemůžou záviset na metodě provádějící předvídatelnou operaci klonování, doporučujeme neimplementovat ve veřejných rozhraních API.

Metody

Clone()

Vytváří nový objekt, který je kopií aktuální instance.

Platí pro

Produkt Verze
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Viz také