Reputation: 6808
What implementations of the Prototype Pattern exist on the Java platform?
A prototype pattern is a creational design pattern used in software development when the type of objects to create is determined by a prototypical instance, which is cloned to produce new objects.
Prototype-based programming is a style of object-oriented programming in which classes are not present, and behavior reuse (known as inheritance in class-based languages) is performed via a process of cloning existing objects that serve as prototypes.
The implementation should be aware that some Java objects are mutable, and some are immutable (see Mutable vs Immutable objects).
Upvotes: 1
Views: 1609
Reputation: 6808
Java defines the Cloneable interface, described here at JGuru
Java provides a simple interface named Cloneable that provides an implementation of the Prototype pattern. If you have an object that is Cloneable, you can call its clone() method to create a new instance of the object with the same values.
Warning: see Cloneable is broken
Upvotes: 0
Reputation: 20101
According to Josh Bloch and Doug Lea, Cloneable is broken. In that case, you can use a copy constructor.
Upvotes: 2
Reputation: 6808
Steve Yegge describes the Eclipse implementation of the ASTNode
Upvotes: 0