治疗技术焦虑的方法就是学习!

设计模式-简单工厂模式

设计模式 李新广 1698℃ 0评论

简单工厂模式本身很简单而且使用在业务较简单的情况下。一般用于小项目或者具体产品很少扩展的情况(这样工厂类才不用经常更改)。
它由三种角色组成:
工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑,根据逻辑不同,产生具体的工厂产品。
抽象产品角色:它一般是具体产品继承的父类或者实现的接口。由接口或者抽象类来实现。
具体产品角色:工厂类所创建的对象就是此角色的实例。

下面来看一个例子:
这里的场景是,在项目中需要的支付功能,这里相当于是对接了两个支付平台,但是对于项目来说,不同的支付平台他们需要做的事情是一样的,先记录日志,然后调起支付接口,最后更新订单。
他们直接的关系如下图:

这里ZfbPayService和WxPayService就是具体产品角色,PayService抽象产品角色,PayServiceFactory负责来生产出不同的产品。

PayService.java

ZfService.java

WxPayService.java

PayServiceFactory.java

这里使用newInstance()方法来实例化对象。

Run.java

源码:https://github.com/li5454yong/DesignPatterns

转载请注明:大道至简 » 设计模式-简单工厂模式

喜欢 (1)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. Usually I do not read post on blogs, however I wish to say that this write-up very pressured me to try and do it! Your writing style has been amazed me. Thank you, very nice article.