2008-10-23 8 views
1

Quelles implémentations du modèle Prototype existent sur la plate-forme Java? Un motif prototype est un motif de conception de création utilisé dans le développement de logiciel lorsque le type d'objets à créer est déterminé par une instance prototypique, qui est clonée pour produire de nouveaux objets.Implémentations Java du modèle de prototypes

Prototype based programming:

programmation basé sur un prototype est un style de programmation orienté objet dans lequel les classes ne sont pas présents, et la réutilisation du comportement (connu sous le nom d'héritage dans les langues à base de classe) est réalisée au moyen d'un processus de clonage d'objets existants qui servent de prototypes. L'implémentation doit être consciente que certains objets Java sont mutables et d'autres sont immuables (voir Mutable vs Immutable objects).

Répondre

2

Selon Josh Bloch et Doug Lea, Cloneable is broken. Dans ce cas, vous pouvez utiliser un copy constructor.

+0

Merci pour ce lien - J'ai également ajouté une référence aux objets mutables/immuables dans la question. – devstopfix

+0

'Object.clone' est cassé. Mais le clonage manuel est toujours bon. –

+0

Cette distinction est vraiment ce que je voulais suggérer. Cloneable en tant qu'interface de marqueur, et le clone void renvoie CloneNotSupportedException – jamesh

0

Java définit l'interface Cloneable, décrite ici à JGuru

Java fournit une interface simple nommée Cloneable qui fournit une implémentation du modèle de prototype. Si vous avez un objet Cloneable, vous pouvez appeler sa méthode clone() pour créer une nouvelle instance de l'objet avec les mêmes valeurs.

Attention: voir Cloneable is broken

Questions connexes