策略模式是一种定义一系列算法的方法,从概念上,所有这些算法完成的都是相同的工作,只是实现不同。所以可以实现context类,他可以以相同的方式调用所有的算法,减少了各类算法类与使用算法类之间之间的耦合。
#encoding=utf-8
#
#by panda
#策略模式
class CashSuper():
result = 0;
def acceptCash(self):
print "in CashSuper"
return self.result
class CashNormal(CashSuper):
result = 0;
def acceptCash(self):
print "in CashNormal"
return self.result
class CashReturn(CashSuper):
result = 0;
def acceptCash(self):
print "in CashReturn"
return self.result
class CashRebate(CashSuper):
result = 0;
def acceptCash(self):
print "in CashRebate"
return self.result
class CashContext():
oper = CashSuper();
def __init__(self, operate):
optList = {
'1':CashNormal,