设计模式~简单工厂模式

简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。

工厂模式专门负责将大量有共同接口的类实例化。

工厂模式的几种形态

  • 简单工厂模式(Simple Factory):又称静态工厂方法模式
  • 工厂方法模式(Factory Method):又称多态性工厂模式或虚拟构造子模式
  • 抽象工厂模式(Abstract Factory): 又称工具箱模式

 简单工厂模式的结构

 从上图可以看出,简单工厂模式涉及到工厂角色、抽象产品角色以及具体产品角色等三个角色:

  • 工厂类角色(Creator): 担任这个角色的是工厂方法模式的核心,含有与应用紧密相关的商业逻辑。工厂类在客户端的直接调用下创建产品对象,它往往由一个具体的java类实现
  • 抽象产品角色(Product): 担任这个角色的类是由工厂方法模式所创建的对象的父类,或他们共同拥有的接口。抽象产品角色可以用一个java接口或者java抽象类实现。
  • 具体产品角色(Concrete Product): 工厂方法模式所创建的任何对象都是这个角色的实例,具体产品角色由一个具体java类实现。

工厂类的示意性源代码:

Creator类的源代码:

示例

猜你喜欢

转载自www.cnblogs.com/Vincent-yuan/p/13388312.html