一、多态
- (以封装和继承为前提)不同的子类调用相同的方法,产生不同的结果
class Dog(): def __init__(self,name): self.name = name def game(self): print('%s 蹦蹦跳跳的玩耍...' %self.name) class Xiaotianquan(Dog): # 父类方法不能满足子类的需求的时候,重写game方法 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)) # 1).创建一个狗对象 wangcai = Dog('旺财') # wangcai = Xiaotianquan('飞天神狗') # 2).创建一个小明对象(小明是一个人) xiaoming = Person('小明') # 3).让小明和狗玩 xiaoming.game_with_dog(wangcai)