Python 多型

說明

多型參考網路上的說法是:呼叫同名的方法時會去執行不同方法實作,則屬於多型。 以下的範例是,在 A 和 B 就是執行"多型"的這個行為。 <這裡延續上一篇 Python 繼承的code>

操作流程

Code

class Animal:
    name = ''
    # __private = ''
    def __init__(self, name):
        self.name = name
    def walk(self):
        print('walking')
    def eat(self):
        print('eating')

class Dog(Animal):
    def __init__(self, name):
        super().__init__(name)
    def walk(self):
        print('{0} using foot walk'.format(self.name))
    def eat(self):
        print('{0} eat bone'.format(self.name))

class Duck(Animal):
    def __init__(self, name):
        super().__init__(name)
    def walk(self):
        print('{0} using two foot walk'.format(self.name))
    def eat(self):
        print('{0} eat worm'.format(self.name))

A = Dog('Dog')
A.eat()
A.walk()

B = Duck('Duck')
B.eat()
B.walk()

輸出

參考

留言