Prototype Pattern
Overview
Specify the kinds of objects to create using a prototypical instance, and create
new objects by copying this prototype.
Participants
- declares an interface for cloning itself.
- implements an operation for cloning itself.
- creates a new object by asking a prototype to clone itself.
Parameters
- name of the cloning operation.
-
when selected, will create special JavaDoc links in the code between pattern participants, describing
their relationships.
Applicability
Use the Prototype pattern when a system should be independent of how its products
are created, composed, and represented, and
- when the classes to instantiate are specified at run-time, e.g. by dynamic
loading; or
- to avoid building a class hierarchy of factories that parallels the class hierarchy of
products; or
- when instances of a class can have one of only a few different combinations
of state. It may be more convenient to install a corresponding number of prototypes
and clone them rather than instantiating the class manually each time with
the appropriate state.