Design Patterns -- Factory Method

The Factor Method pattern lets a class developer define the interface for creating an object while retaining control of which class to instantiate, see pic:

To summarize, the signs that Factory Method is at work are that an operation:

  • Creates a new object
  • Returns a type that is an abstract calss or an interface
  • The class/interface returned is implemented by several classes (The subclass is  to determine which class to instantiate)

The spirit of Factory Method is that the object creator makes a choice about which of several possible classes to instantiate for the client. In other words, Factory Method lets subclasses decide which class to instantiate.

The Iterator in Java is a good example for Factory Method.

The Factory Method pattern often appears when we use parallel herarchies to model a problem domain. Factory Method lets you connect parallel hiearchies by letting subclasses in one hierarchy determine which class to instantiate in the corresponding hierarchy, see pic:

Design Patterns -- Factory Method_第1张图片

 and sequence diagram:

Design Patterns -- Factory Method_第2张图片

你可能感兴趣的:(Design Patterns -- Factory Method)