多态

  1. python
# python 天生支持多态

class Alipay():
    def pay(self,money):
        print('已经用支付宝支付了%s元' % money)

class Applepay():
    def pay(self,money):
        print('已经用applepay支付了%s元' % money)

# 统一支付入口  归一化设计
def pay(pay_obj,money):  # python对pay_obj没有强制要求
    pay_obj.pay(money)

pay()
  1. 其他语言
class Payment:pass

class Alipay(Payment):
    def pay(self,money):
        print('已经用支付宝支付了%s元' % money)

class Applepay(Payment):
    def pay(self,money):
        print('已经用applepay支付了%s元' % money)

def pay(Payment pay_obj,money):  # 参数使用Payment类型的pay_obj
    pay_obj.pay(money)

pay()

上一篇:数据ETL-基于Python的数据预处理案例


下一篇:策略模式