设计模式之---策略模式
来源:互联网 发布:redhat7 yum源配置 编辑:程序博客网 时间:2024/06/01 20:50
策略:
namespace 商场管理软件{ class context { private cash cs; public context(cash cs)//构造相应的 函数 这里其实是构造对应不同算法的对象 { this.cs = cs; } public double getResult(double money) { return cs.accepyCash(money);//调用不同的算法 } }}
策略模式是用来封装算法的,但是,在现实生活中可以看到,策略模式是可以封装任何的类型规则。只要在分析过程在不同的时刻调用不同的函数规则就可以。
策略模式相比较于工厂模式:
策略模式将算法封装(也可以理解为类),然后提供一个调用的类 类似与一个统一的接口,具体的实现对应于用户操作时调用来创建的对象来定。
工厂模式将类分装,在工厂类中根据用户的具体需求来创建不同的类,在用户实现时,根据情况产生单一的具体问题的解。
工厂模式:
namespace 商场管理软件{ class cashFactory { public static cash creatcash(string type) { cash super = null; switch (type) { case "正常收费": super = new cashNomal(); break; case "满300返100": cashreturn super1 = new cashreturn("300","100"); super = super1; break; case "打八折": cashRebate super2 = new cashRebate(0.8); super = super2; break; } return super; } }}
让我再思考思考。
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- horizon中列表的连接默认以主键为传递参数,如果想以其他为传递参数
- 5天学会jaxws-webservice编程第一天 .
- pthread_cancel用法及常见问题
- play Framework 配置
- 5天学会jaxws-webservice编程第二天 .
- 设计模式之---策略模式
- Qt的信号槽机制简单示例
- 5天学会jaxws-webservice编程第三天 .
- java.lang.UnsupportedClassVersionError: Bad version number in .class file
- UVA 591 - Box of Bricks
- 事件Qevent的接受和忽略 和重定义 事件过滤器
- Selenium-----体验之旅
- 5天学会jaxws-webservice编程第四天 .
- 蚁群算法的源代码 .