Python,定义一个基类animal和他的子类dog,cat,cow基类animal中定义一个sound方法,该方法在子类中进行了重写,通过make sound函数我们接受一个animal类型的参数并调用sound方法,实现多态
时间: 2024-09-27 11:14:32 浏览: 47
在Python中,我们可以创建一个名为`Animal`的基类(也称为父类),然后定义它的子类如`Dog`, `Cat`, 和 `Cow`。为了演示多态,基类通常会有一个抽象的行为或者方法,这里我们可以定义一个`sound()`方法。这个方法在每个子类中都会有不同的实现,展示出不同的叫声。
```python
# 定义基类 Animal
class Animal:
def sound(self):
print("This is an animal.")
# 定义子类 Dog,重写 sound 方法
class Dog(Animal):
def sound(self):
print("Woof!")
# 定义子类 Cat,同样重写 sound 方法
class Cat(Animal):
def sound(self):
print("Meow!")
# 定义子类 Cow,也有自己的 sound 方法
class Cow(Animal):
def sound(self):
print("Moo!")
# 利用 make_sound 函数实现多态
def make_sound(animal):
animal.sound()
# 创建对象并调用 make_sound
my_dog = Dog()
my_cat = Cat()
my_cow = Cow()
make_sound(my_dog) # 输出 "Woof!"
make_sound(my_cat) # 输出 "Meow!"
make_sound(my_cow)
阅读全文