# 定义一个名为 Animal 的父类
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
pass
# 定义一个名为 Dog 的子类,继承自 Animal
class Dog(Animal):
def speak(self):
return self.name+" Woof!"
# 定义一个名为 Cat 的子类,继承自 Animal
class Cat(Animal):
def speak(self):
return self.name+" Meow!"
# 创建一个 Dog 对象和一个 Cat 对象
my_dog = Dog("Buddy")
my_cat = Cat("Whiskers")
# 调用子类的方法
print(my_dog.speak()) # 输出: Woof!
print(my_cat.speak()) # 输出: Meow!
代码定义了一个名为 Animal 的父类,以及两个子类 Dog 和 Cat,它们都继承自 Animal 父类。每个子类都覆盖(重写)了父类中的 speak 方法,以提供自己特定的实现。
在代码的最后,你创建了一个 Dog 对象和一个 Cat 对象,并调用它们各自的 speak 方法。由于子类已经覆盖了父类的 speak 方法,所以调用子类对象的 speak 方法时会返回相应的字符串。
这个例子展示了继承的概念,在父类中定义公共方法,子类可以继承并根据自己的需求进行重写。这种方式可以更好地组织和重用代码。