多型(Polymorphism)是一種將功能泛化至不同類型的重要概念,它在物件導向程式設計中扮演著重要的角色。

我們可以在不同的類別上定義相同的方法:

class Dog:
    def eat():
        print('吃狗食')

class Cat:
    def eat():
        print('吃貓食')

然後我們可以建立物件並呼叫 eat() 方法,不論物件屬於哪個類別,都能得到不同的結果:

animal1 = Dog()
animal2 = Cat()

animal1.eat()
animal2.eat()

我們建立了一個泛用的介面,現在不需要知道動物是貓還是狗。