zoukankan      html  css  js  c++  java
  • 六.工厂与策略结合

    工厂与策略结合:

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

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

    传入参数

    判断选择实体类型

    返回实例化的类型

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

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

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

                         客户端调用策略类的这个

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

                  传入参数

                  判断选择实体类型

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

           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);

           }

        }

  • 相关阅读:
    linux环境开机自启动nginx
    linux下启动weblogic
    oracle 数据库服务名怎么查
    关于 CSS3 backface-visiable 与 overflow 属性的冲突
    iframe 通信之坑
    npm i --save & npm i --save-dev
    window.blur/focus & document.hasFocus()
    mac zip 命令行 终端压缩加密文件
    audio之autoplay
    JAVA 重写&重载/多态/抽象类/封装/接口/包
  • 原文地址:https://www.cnblogs.com/yaoge/p/1815226.html
Copyright © 2011-2022 走看看