概述
1 策略模式
1〉建立业务的抽象类;
2〉各业务类继承抽象类,覆盖抽象方法;
3〉建立策略类,根据传入的不同业务,生成不同的业务类对象
4〉客户端生成策略,调用策略方法;
1〉建立业务的抽象类;
class CashSuper
{
public class abstract Double accepCash(double money);
}
2〉各业务类继承抽象类,覆盖抽象方法;
class normal:CashSuper
{
public override double accepCash(double money)
{
return money;
}
class rebate:CashSuper
{
public double rebateMoney=0;
public double cashRebate(string money)
{
this.rebateMoney=money;
}
public override double accepCash(double money)
{
double result=0
result=money * rebateMoney;
}
}
}
3〉建立策略类,根据传入的不同业务,生成不同的业务类对象
class CashContext
{
CashSuper cs=null;
public CashContext(string selecttype)
{
switch(selecttype)
{
case"normal":
{
cs=new CashNormal();
break;
}
case"0.7":
{
cs=new CashRebate("0.7);
break;
}
}
}
public double Result(double money)
{
cs.accepCash(money);
}
}
4〉客户端生成策略,调用策略方法;
CashContext cc=new CashContext(this.drplist.SelectItem.Text)
cc.Result(Convert.ToDouble(this.txtNum.text)* Convert.ToDouble(this.txtPrices.Text)));
转载于:https://www.cnblogs.com/csj007523/archive/2010/03/12/1684638.html
最后
以上就是冷艳毛巾为你收集整理的策略模式的全部内容,希望文章能够帮你解决策略模式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复