Object.Clone Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea y devuelve una copia de este objeto.
[Android.Runtime.Register("clone", "()Ljava/lang/Object;", "GetCloneHandler")]
protected virtual Java.Lang.Object Clone();
[<Android.Runtime.Register("clone", "()Ljava/lang/Object;", "GetCloneHandler")>]
abstract member Clone : unit -> Java.Lang.Object
override this.Clone : unit -> Java.Lang.Object
Devoluciones
un clon de esta instancia.
- Atributos
Excepciones
si la clase de este objeto no implementa la Cloneable interfaz .
Comentarios
Crea y devuelve una copia de este objeto. El significado preciso de "copy" puede depender de la clase del objeto. La intención general es que, para cualquier objeto x, la expresión: <blockquote>
x.clone() != x
</blockquote> será true y que la expresión: <blockquote>
x.clone().getClass() == x.getClass()
</blockquote> será true, pero estos no son requisitos absolutos. Aunque suele ser el caso de que: <blockquote>
x.clone().equals(x)
</blockquote> será true, no es un requisito absoluto.
Por convención, el objeto devuelto debe obtenerse llamando a super.clone. Si una clase y todos sus superclases (excepto Object) obedecen esta convención, será el caso de que x.clone().getClass() == x.getClass().
Por convención, el objeto devuelto por este método debe ser independiente de este objeto (que se va a clonar). Para lograr esta independencia, puede ser necesario modificar uno o varios campos del objeto devuelto antes super.clone de devolverlo. Normalmente, esto significa copiar los objetos mutables que componen la "estructura profunda" interna del objeto que se va a clonar y reemplazar las referencias a estos objetos por referencias a las copias. Si una clase contiene solo campos primitivos o referencias a objetos inmutables, normalmente es el caso de que no sea necesario modificar ningún campo del objeto devuelto.super.clone
Java documentación para java.lang.Object.clone().
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.