1. 什么是多态
多态(以封装和继承为前提)
不同的子类对象调用相同的方法,产生不同的执行结果
2. 举例
class Dog(object):
def __init__(self,name):
self.name = name
def game(self):
print('%s 玩耍么'%self.name)
class Gaifei(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 =Dog('大黄')
xiaoming=Person('小苗')
xiaoming.game_with_dog(wangcai)
wangcai=Gaifei('高飞')
xiaoming.game_with_dog(wangcai)
小苗和大黄玩
大黄 玩耍么
小苗和高飞玩
高飞 不约