继承和多态是面向对象编程中的核心概念。在这个教程中,我们将探讨如何在 Python 中实现这些概念。

继承

继承允许一个类继承另一个类的属性和方法。下面是一个简单的例子:

class Animal:
    def __init__(self, name):
        self.name = name

    def speak(self):
        return "Some sound"

class Dog(Animal):
    def speak(self):
        return "Woof!"

dog = Dog("Buddy")
print(dog.speak())  # 输出: Woof!

在上面的例子中,Dog 类继承自 Animal 类,并重写了 speak 方法。

多态

多态意味着同一个方法可以有不同的实现。在继承中,子类可以重写父类的方法,从而实现多态。

class Animal:
    def speak(self):
        return "Some sound"

class Dog(Animal):
    def speak(self):
        return "Woof!"

class Cat(Animal):
    def speak(self):
        return "Meow!"

def animal_sound(animal):
    print(animal.speak())

dog = Dog("Buddy")
cat = Cat("Kitty")

animal_sound(dog)  # 输出: Woof!
animal_sound(cat)  # 输出: Meow!

在这个例子中,animal_sound 函数可以接受任何 Animal 类型的对象,并调用其 speak 方法。由于 DogCat 都继承自 Animal,因此它们都可以作为参数传递给这个函数。

Python 继承图解

更多关于 Python 面向对象编程的信息,请访问我们的 面向对象编程教程