在Python編程中,類是一個非常重要的概念,可以用來封裝數據和行為。在以下示例中,我們將介紹類的經典用法。
class Animal: def __init__(self, name): self.name = name def speak(self): raise NotImplementedError("必須實現speak方法") class Dog(Animal): def speak(self): return "汪汪!" class Cat(Animal): def speak(self): return "喵喵!" animals = [Dog("小狗"), Cat("小貓")] for animal in animals: print(animal.name + ":" + animal.speak())
上面的代碼展示了一個Animal類和兩個繼承它的子類:Dog和Cat。Animal類是一個抽象類,其中定義了一個抽象方法speak()。在Python中,抽象類不能被實例化,其中的抽象方法必須在子類中實現。
當我們使用子類實例化一個Animal對象時,它將自動調用該子類的speak()方法,而不是Animal類的。因此,在上面的示例中,我們可以看到小狗和小貓都可以通過speak()方法發出不同的聲音。
除了繼承之外,Python的類還支持多態。在上面的示例中,我們可以看到,無論你是使用Dog還是Cat實例化對象,它們都可以添加到數組中,并且在循環過程中都可以通過speak()方法調用。
所以,盡管Python可能不是嚴格的面向對象編程語言,但使用類的經典用法可以使你編寫出更具封裝和靈活性的代碼。