• 六.工厂与策略结合


    工厂与策略结合:

           将工厂模式与策略模式结合使用

                  工厂模式:——客户端需要用到工厂和方法类

    传入参数

    判断选择实体类型

    返回实例化的类型

                  策略模式:——客户端需要用到策略和方法类

                         传入的是(已经判断选择的实例化的)实体类型

                         声明一个方法,调用实体的方法

                         客户端调用策略类的这个

           结合后:——客户端只需用到工厂策略类

                  传入参数

                  判断选择实体类型

                  声明一个方法,调用实体的方法

           classCashContextFactory

        {

           private CashSuper cs;

           public CashContextFactory (string type)

           {

               switch (type)

               {

                    case "正常收费":

                        cs = new CashNormal();

                        break;

                    case "打八折":

                       cs = newCashRebhate("0.8");

                        break;

                    case "打七折":

                        cs = newCashRebhate("0.7");

                        break;

                    case "满500送100":

                        cs = newCashReturn("500", "300");

                        break;

               }

           }

           public double GetResult(double monty)

           {

               return cs.acceptCash(monty);

           }

        }

  • 相关阅读:
    About Face 摘录
    断言的使用
    C#中值传递和引用传递
    C++技巧之断言Assert
    About Face 一 目标导向设计
    About Face 二 设计行为与形态
    C++中引用传递与指针传递区别
    一个新的时代SoLoMo
    离散数学笔记算法部分
    汪教授的离散数学20110308 谓词与量词2
  • 原文地址:https://www.cnblogs.com/yaoge/p/1815226.html
Copyright © 2020-2023  润新知