Python中的多态通常和继承在一起说,继承、多态、封装是Python面向对象的三大特性。
多态:声明的形参的时候是父类对象,实际运行的时候是子类对象
特性:
1、多态可以增加代码的灵活度
2、以重写和继承父类方法为前提
3、不会影响到类内部设计
下面拿例子具体给大家解释:
class Pay(object):
def pay(self,money):pass
class Alipay(Pay):
def pay(self,money):
print("支付宝支付了{}元".format(money))
class Applepay(Pay):
def pay(self,money):
print("apple pay 支付了{}元".format(money))
class Person(object):
def consumption(self,pay,money):
pay.pay(money)
alipay=Alipay()
apple_pay=Applepay()
person=Person()
结果:
支付宝支付了1000元
apple pay 支付了2000元