Definition: Specify the type of object to create an object with a prototype instance, and create a new object by copying these prototypes. PROTOTYPE mode allows an object to create another customable object, do not need to know how to create details, the working principle is: A prototype object is passed to the object to be created. This object to be created is created by requesting prototype objects to create itself. How to use it? Because the Clon () method in Java implements the clone of the object (specifically understand clone () is here), the prototype mode achieves a bit simple. Take a spoon as an example: public abstract class abstractspoon imports cloneable { String spoonName; public void setSpoonName (String spoonName) {this.spoonName = spoonName;} public String getSpoonName () {return this.spoonName;} public Object clone () {Object object = null; try {object = super.clone () ;} catch (CloneNotSupportedException exception) {System.err.println ( "AbstractSpoon is not Cloneable");} return object;}} embodied with two (ConcretePrototype): public class SoupSpoon extends AbstractSpoon {public SoupSpoon () {setSpoonName ( "Soup Spoon");}} public class SaladSpoon extends AbstractSpoon {public SaladSpoon () {setSpoonName ( "Salad Spoon");}} call Prototype pattern is simple: AbstractSpoon spoon = new SoupSpoon (); AbstractSpoon spoon = new SaladSpoon () Of course, it can also create the AbstractSpoon instance in combination with plant mode. The prototype mode in Java becomes the use of the Clone () method, due to the pure object-oriented characteristics of Java, make it very nature in Java, which is almost a bitter. This is reflected in many modes, such as Interactor traversal mode.