• 工厂方法模式小记【原创】


          女娲补天的故事大家都听说过吧,今天不说这个,说女娲创造人的故事,可不是“造人”的工作,这个词被现代人滥用了。这个故事是说,女娲在补了天后,下到凡间一看,哇塞,风景太优美了,天空是湛蓝的,水是清澈的,空气是清新的,太美丽了,然后就待时间长了就有点寂寞了,没有动物,这些看的到都是静态的东西呀,怎么办?
    别忘了是神仙呀,没有办不到的事情,于是女娲就架起了八卦炉(技术术语:建立工厂)开始创建人,具体过程是这样的:先是泥巴捏,然后放八卦炉里烤,再扔到地上成长,但是意外总是会产生的:
          第一次烤泥人,兹兹兹兹~~,感觉应该熟了,往地上一扔,biu~,一个白人诞生了,没烤熟!
          第二次烤泥人,兹兹兹兹兹兹兹兹~~,上次都没烤熟,这次多烤会儿,往地上一扔,嘿,熟过头了,黑人哪!
          第三次烤泥人,兹~兹~兹~,一边烤一边看着,嘿,正正好,Perfect!优品,黄色人类!【备注:RB人不属此列】

    定义了一个产品类(Human)和其具体实现类,一个抽象工厂类(AbstractHumanFactory)及其具体工厂实现类。工厂方法模式最大的特点就是定义了一个用于创建对象的接口(AbstractHumanFactory),让子类决定去实例化哪个类(BlackHuman、YellowHuman、WhiteHuman,这里少画了三条由HumanFactory指向三个具体产品类的虚线,表示依赖)。

          工厂方法有个通用的类图:

    对于此图有一个相应的通用代码(java代码):

    1:抽象产品类:

    2:具体产品类:

    3:抽象工厂类:

    4:具体工厂类:

    5:客户端:

    一句话概括工厂方法模式:工厂子类对创建子类的实现。

  • 相关阅读:
    STM32 + RT Thread OS 学习笔记[三]
    全代码实现ios-1
    HTML5 Web Speech API 结合Ext实现浏览器语音识别以及输入
    全代码实现ios-2
    从零开始学C++之虚函数与多态(一):虚函数表指针、虚析构函数、object slicing与虚函数
    二进制程序分析工具Pin在Windows系统中的安装和使用方法
    使用U盘安装Ubuntu系统的实践小结
    HDU 1874 畅通工程续
    JSP页面上用横线代替文本框
    Mysql设置编码
  • 原文地址:https://www.cnblogs.com/winkey4986/p/2419116.html
Copyright © 2020-2023  润新知