Condividi tramite


ICloneable Interfaccia

Definizione

Supporta la clonazione, ovvero la creazione di una nuova istanza di una classe con lo stesso valore di un'istanza esistente.

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
Derivato
Attributi

Commenti

L'interfaccia ICloneable consente di fornire un'implementazione personalizzata che crea una copia di un oggetto esistente. L'interfaccia ICloneable contiene un membro, il Clone metodo, destinato a fornire supporto di clonazione oltre a quello fornito da Object.MemberwiseClone. Per altre informazioni sulla clonazione, sulla profondità e sulle copie superficiali e sugli esempi, vedere il Object.MemberwiseClone metodo .

Note per gli implementatori

L'interfaccia ICloneable richiede semplicemente che l'implementazione Clone() del metodo restituisca una copia dell'istanza dell'oggetto corrente. Non specifica se l'operazione di clonazione esegue una copia profonda, una copia superficiale o qualcosa tra. Né richiede che tutti i valori delle proprietà dell'istanza originale vengano copiati nella nuova istanza. Ad esempio, il Clone() metodo esegue una copia superficiale di tutte le proprietà tranne la IsReadOnly proprietà. Imposta sempre questo valore di proprietà su false nell'oggetto clonato. Poiché i chiamanti di Clone() non possono dipendere dal metodo che ICloneable esegue un'operazione di clonazione prevedibile, è consigliabile non essere implementati nelle API pubbliche.

Metodi

Clone()

Crea un nuovo oggetto che è una copia dell'istanza corrente.

Si applica a

Vedi anche