zoukankan      html  css  js  c++  java
  • C#设计模式(3)——工厂方法模式

    http://learninghard.blog.51cto.com/6146675/1293321

    核心内容:

    UML图:

    从UML图可以看出,在工厂方法模式中,工厂类与具体产品类具有平行的等级结构,它们之间是一一对应的。针对UML图的解释如下:

    Creator类:充当抽象工厂角色,任何具体工厂都必须继承该抽象类

    TomatoScrambledEggsFactory和ShreddedPorkWithPotatoesFactory类:充当具体工厂角色,用来创建具体产品

    Food类:充当抽象产品角色,具体产品的抽象类。任何具体产品都应该继承该类

    TomatoScrambledEggs和ShreddedPorkWithPotatoes类:充当具体产品角色,实现抽象产品类对定义的抽象方法,由具体工厂类创建,它们之间有一一对应的关系。

    其特点:

    当出现新产品时,定义好新产品的类(继承Food类,实现其中的抽象方法)后,不用修改Creator这个工厂抽象类,即不需要再其中增加case语句,只需要增加一个新的生产这种产品的产品工厂类,该产品工厂类实现Creator中的抽象方法。客户端使用时直接用该产品工厂类创建对象。

    缺点:每增加一个新产品,就需要增加一个产品工厂类,或者说一个产品工厂类只能创建一种产品对象.

  • 相关阅读:
    kubeadm部署k8s v1.18.6版本
    harbor
    kubectl常用命令
    日常运维知识点
    CentOS6.5搭建oracle11g RAC
    linux(mint)下刻录镜像到光盘
    aspectj
    NoSql系列目录
    在线考试系统源码(题库抽题&自动阅卷打分)
    java问卷调查系统源码(java+mysql)
  • 原文地址:https://www.cnblogs.com/liyanwei/p/3868321.html
Copyright © 2011-2022 走看看