Definición del patrón prototipo: use instancias prototipo para especificar el tipo de objetos que se crean y crear nuevos objetos copiando estos prototipos.
El modo prototipo permite que un objeto cree otro objeto personalizable sin conocer ningún detalle de cómo crearlo. .
Cómo usar el modo prototipo
Debido a que Java proporciona el método Clone () para implementar la clonación de objetos, la implementación del modo prototipo de repente se vuelve muy simple. Tome la cuchara como ejemplo:
La copia del código es la siguiente:
Public Abstract Class AbstractSpoon implementa clonables {
Nombre de cuchara de cadena;
public void setSpoonName (String SpoonName) {this.spoonName = SpoonName;}
Cadena pública getSpoonName () {return this.spoonName;}
Public Object Clone () {
Objeto objeto = nulo;
intentar {
objeto = super.clone ();
} Catch (excepción de clonenotsupportedException) {
System.err.println ("AbstractSpoon no es clonable");
}
Objeto de retorno;
}
}
Hay dos implementaciones concretas (concreteprototipo):
La copia del código es la siguiente:
Soupspoon de clase pública se extiende abstractspoon {
Public SoupSpoon () {
setSpoonName ("Soup Spoon");
}
}
Ensaladspon de clase pública se extiende abstractspoon {
Ensalada pública Spoon () {
setSpoonName ("Spoon de ensalada");
}
}
Llamar al modo prototipo es simple:
La copia del código es la siguiente:
AbstractSpoon Spoon = new SoupSpoon ();
Abstractspoon Spoon = nueva ensalada Spoon ();
Por supuesto, también puede combinar el modo de fábrica para crear instancias abstractas de Spoon.
En Java, el uso del patrón prototipo se convierte en el método clon (). Esto se refleja en muchos modos, como el modo transversal del interador.