- 多态 不同 的子类对象调用 相同 的 父类方法 ,产生 不同的执行结果 ;多态可以 增加 代码的 灵活度 ;以 继承 和 重写 父类方法为前提,是调用方法的技巧,不会影响到类的 内部设计。
class Dog(object):
def __init__(self, name):
self.name = name
def game(self):
print("[%s] 蹦蹦跳跳的玩耍..." % self.name)
class XiaoTianDog(Dog):
def game(self):
print("[%s] 飞到天上玩耍..." % self.name)
class Person(object):
def __init__(self, name):
self.name = name
def game_with_dog(self, dog):
print("[%s] 和 [%s] 快乐的玩耍..." % (self.name, dog.name))
dog.game()
wangcai = XiaoTianDog("飞天旺财")
xiaoming = Person("小明")
xiaoming.game_with_dog(wangcai)
[小明] 和 [飞天旺财] 快乐的玩耍...
[飞天旺财] 飞到天上玩耍...