devstopfix
devstopfix

Reputation: 6808

Java implementations of the Prototype Pattern

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:

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

Answers (3)

devstopfix
devstopfix

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

jamesh
jamesh

Reputation: 20101

According to Josh Bloch and Doug Lea, Cloneable is broken. In that case, you can use a copy constructor.

Upvotes: 2

devstopfix
devstopfix

Reputation: 6808

Steve Yegge describes the Eclipse implementation of the ASTNode

Upvotes: 0

Related Questions