ICloneable Interface

Definição

Dá suporte à clonagem, que cria uma nova instância de uma classe com o mesmo valor de uma instância existente.Supports cloning, which creates a new instance of a class with the same value as an existing instance.

public interface class ICloneable
public interface ICloneable
[System.Runtime.InteropServices.ComVisible(true)]
public interface ICloneable
type ICloneable = interface
Public Interface ICloneable
Derivado
Atributos

Comentários

A interface ICloneable permite que você forneça uma implementação personalizada que cria uma cópia de um objeto existente.The ICloneable interface enables you to provide a customized implementation that creates a copy of an existing object. A interface ICloneable contém um membro, o método Clone, destinado a fornecer suporte à clonagem além do fornecido pelo Object.MemberwiseClone.The ICloneable interface contains one member, the Clone method, which is intended to provide cloning support beyond that supplied by Object.MemberwiseClone. Para obter mais informações sobre clonagem, cópias profundas versus superficiais e exemplos, consulte o método Object.MemberwiseClone.For more information about cloning, deep versus shallow copies, and examples, see the Object.MemberwiseClone method.

Notas aos Implementadores

A interface ICloneable simplesmente requer que a implementação do método Clone() retorne uma cópia da instância do objeto atual.The ICloneable interface simply requires that your implementation of the Clone() method return a copy of the current object instance. Ele não especifica se a operação de clonagem executa uma cópia profunda, uma cópia superficial ou algo entre.It does not specify whether the cloning operation performs a deep copy, a shallow copy, or something in between. Nem requer que todos os valores de propriedade da instância original sejam copiados para a nova instância.Nor does it require all property values of the original instance to be copied to the new instance. Por exemplo, o método Clone() executa uma cópia superficial de todas as propriedades, exceto a propriedade IsReadOnly; Ele sempre define esse valor de propriedade como false no objeto clonado.For example, the Clone() method performs a shallow copy of all properties except the IsReadOnly property; it always sets this property value to false in the cloned object. Como os chamadores de Clone() não podem depender do método que executa uma operação de clonagem previsível, recomendamos que ICloneable não seja implementado em APIs públicas.Because callers of Clone() cannot depend on the method performing a predictable cloning operation, we recommend that ICloneable not be implemented in public APIs.

Métodos

Clone()

Cria um novo objeto que é uma cópia da instância atual.Creates a new object that is a copy of the current instance.

Aplica-se a

Veja também