在Python中,假设你有一个名为Animal的基类,它有一个方法make_sound(),该方法默认打印出"This animal makes a generic sound."。现在,你希望创建两个子类Dog和Cat,分别重写make_sound()方法以输出更具体的动物声音(比如狗叫"Woof!",猫叫"Meow!")。
此外,你还需要添加一个speak()方法到Animal类中,该方法仅调用make_sound()。你的任务是:
- 定义一个
Animal基类,包含make_sound()和speak()方法。 - 定义
Dog和Cat两个子类,分别重写make_sound()方法以输出各自的声音。 - 创建
Dog和Cat的实例,并调用它们的speak()方法,观察输出是否如预期(狗叫"Woof!",猫叫"Meow!")。
class Animal:
def make_sound(self):
print("This animal makes a generic sound.")
def speak(self):
self.make_sound()
# 在这里定义Dog和Cat类,并重写make_sound()方法
# 创建Dog和Cat的实例,并调用speak()方法
# dog = Dog()
# cat = Cat()
# dog.speak() # 应输出: Woof!
# cat.speak() # 应输出: Meow!