简单工厂模式

简单工厂模式:是类的创建模式,又叫静态工厂方法模式。它由一个工厂对象决定创建出那一种产品类的实例。

 

工厂模式的几种形态:简单工厂、工厂方法(多态性工厂、虚拟构造子)、抽象工厂。

 

简单工厂模式就是由一个工厂类根据传入的参量决定创建出哪一种产品类的实例。

 

简单工厂模式涉及到的角色:工厂、抽象产品,具体产品。

 

如果具体产品类彼此之间没有共同的商业逻辑,那么抽象产品角色可以由一个Java接口扮演。反之由一个抽象类扮演。

 

多个工厂方法:每个工厂类可以有多于一个的工厂方法,分别负责创建不同的产品对象。比如java.text.DateFormat类是其子类的工厂类,而DateFormat类就提供了多个静态工厂方法。

 

抽象产品角色的省略:如果只有一个具体产品的话,那么可以省略掉抽象产品角色。

 

工厂角色与抽象产品角色合并:在有些情况下,工厂角色可以由抽象产品角色扮演。如java.text.DateFormat抽象产品类同时是子类的工厂。

 

三个角色全部合并:如果抽象产品角色已经被省略,而工厂角色就可以和具体产品角色合并。换言之,一个产品类可以是自身的工厂。

 

单利模式与多例模式是建立在简单工厂模式的基础之上的,而且它们都要求工厂方法具有特殊的逻辑,以便能循环使用产品的实例。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值