(一)Python入門-6面向對象編程:09多態

多態:

  多態(polymorphism)是指同一個方法調用因爲對象不一樣可能會產生不一樣的行爲。在現實 生活中,咱們有不少例子。好比:一樣是調用人的休息方法,張三的休息是睡覺,李四的休 息是玩遊戲,程序員是敲代碼。一樣是吃飯的方法,中國人用筷子吃飯,英國人用刀叉吃 飯,印度人用手吃飯。程序員

  關於多態要注意如下2點:spa

    1. 多態是方法的多態,屬性沒有多態。code

    2. 多態的存在有兩個必要條件:繼承、方法重寫。對象

【操做】blog

#多態
class Animal:
    def shout(self):
        print('動物叫了一聲')

class Dog(Animal):
    def shout(self):
        print('小狗,汪汪汪!!!')

class Cat(Animal):
    def shout(self):
        print('小貓,喵喵喵!!!')

def animalShout(a):
    if isinstance(a,Animal):
        a.shout()    #傳入的對象不一樣,shout方法對應的實際行爲也不一樣

animalShout(Cat())
animalShout(Dog())

運行結果:繼承

  小貓,喵喵喵!!!
  小狗,汪汪汪!!!遊戲

相關文章
相關標籤/搜索