El patrón de diseño de prototipo se utiliza cuando se crean con frecuencia objetos muy similares. El patrón de prototipo clona objetos y establece la función modificada. De esta forma, se consumen menos recursos.
1. Diagrama de clases de patrón de prototipo
2. Ejemplo de Java de patrón de prototipo
package designpatterns.prototype; //prototype interface Prototype { void setSize(int x); void printSize(); } // a concrete class class A implements Prototype, Cloneable { private int size; public A(int x) { this.size = x; } @Override public void setSize(int x) { this.size = x; } @Override public void printSize() { System.out.println("Size: " + size); } @Override public A clone() throws CloneNotSupportedException { return (A) super.clone(); } } //when we need a large number of similar objects public class PrototypeTest { public static void main(String args[]) throws CloneNotSupportedException { A a = new A(1); for (int i = 2; i < 10; i++) { Prototype temp = a.clone(); temp.setSize(i); temp.printSize(); } } } |
3. Patrón de diseño de prototipos utilizado en la biblioteca estándar de Java
java.lang.Object – clon ()