多态
指同一个方法调用由于对象不同可能会产生不同的行为。
关于多态要注意以下几点:
- 多态是方法的多态,属性没有多态
- 多态的存在有两个必要条件:继承、方法重写
1 class Man: 2 def eat(self): 3 print('饿了,准备吃饭') 4 5 class Chinese(Man): 6 def eat(self): 7 print('中国人用筷子吃饭') 8 9 class English(Man): 10 def eat(self): 11 print('英国人用刀叉吃饭') 12 13 class India(Man): 14 def eat(self): 15 print('印度人用右手吃饭') 16 17 def manEat(m): 18 if isinstance(m,Man): 19 m.eat() 20 else: 21 print('不能吃饭') 22 manEat(Chinese()) 23 manEat(India())