Looking for java Keywords? Try Ask4Keywords

Java LanguageClonage d'objets


Remarques

Le clonage peut être délicat, en particulier lorsque les champs de l'objet contiennent d'autres objets. Il existe des situations où vous souhaitez effectuer une copie complète , au lieu de copier uniquement les valeurs de champ (c.-à-d. Les références aux autres objets).

La ligne du bas est clone est cassé , et vous devriez réfléchir à deux fois avant d'implémenter l'interface Cloneable et de Cloneable la méthode de clone . Le clone méthode est déclarée dans l' Object classe et non dans la Cloneable interface, donc Cloneable ne fonctionne pas comme une interface , car il ne dispose pas d' un public clone méthode. Le résultat est que le contrat d'utilisation du clone est peu documenté et faiblement appliqué. Par exemple, une classe qui remplace le clone s'appuie parfois sur toutes ses classes parentes qui ont également la priorité sur le clone . Ils ne sont pas obligés de le faire, et s’ils ne le font pas, votre code peut générer des exceptions.

Une solution bien meilleure pour fournir une fonctionnalité de clonage consiste à fournir un constructeur de copie ou une fabrique de copies . Reportez-vous à l' article 11 de Java efficace de Joshua Bloch : remplacer judicieusement le clone.

Clonage d'objets Exemples Liés