Adapter
# 当我们需要改动部分的代码很少的时候,我们直接多继承+复写方法即可
from abc import ABCMeta,abstractclassmethod
class Payment(metaclass=ABCMeta):
@abstractclassmethod
def pay(self,money):
pass
class Alipay(Payment):
def pay(self,money):
print("阿里支付了{}元".format(money))
class Weixinpay(Payment):
def pay(self,money):
print("微信支付了{}元".format(money))
class Bankpay:
def cost(self,money):
print("银行卡支付{}元".format(money))
class NewBankPay(Payment,Bankpay):
def pay(self,money):
self.cost(money)
nb = NewBankPay()
nb.pay(100)
Last updated