利用继承类设计四个类:Animal类,Dog类,Cat类和Bird类 Animal具有名称、体重、身高等数据成员,吃、说话等方法成员 Dog继承Animal类,对吃、说话方法进行重写(按照狗的特点) Cat继承Animal类,对吃、说话方法进行重写(按照猫的特点) Bird继承Animal类,对吃、说话方法进行重写(按照鸟的特点) 模拟以下过程: 动物园新进一批动物(5只),可以用空列表表达,列表中的每一个元素为一只动物,不同动物元素在生成对象的时候用各自的构造函数构造。 第一只狗 第二只猫 第三只狗 第四只鸟 第五只狗 用循环依次调用列表中每个元素的吃、说话方法
时间: 2024-03-09 21:50:18 浏览: 113
好的,下面是实现代码:
```python
class Animal:
def __init__(self, name, weight, height):
self.name = name
self.weight = weight
self.height = height
def eat(self):
print(f"{self.name} is eating.")
def speak(self):
print(f"{self.name} is speaking.")
class Dog(Animal):
def __init__(self, name, weight, height):
super().__init__(name, weight, height)
def eat(self):
print(f"{self.name} is eating bones.")
def speak(self):
print(f"{self.name} is barking.")
class Cat(Animal):
def __init__(self, name, weight, height):
super().__init__(name, weight, height)
def eat(self):
print(f"{self.name} is eating fish.")
def speak(self):
print(f"{self.name} is meowing.")
class Bird(Animal):
def __init__(self, name, weight, height):
super().__init__(name, weight, height)
def eat(self):
print(f"{self.name} is eating seeds.")
def speak(self):
print(f"{self.name} is chirping.")
# 创建动物列表
animals = [Dog("Tommy", 10, 30),
Cat("Kitty", 5, 20),
Dog("Lucky", 8, 25),
Bird("Tweety", 1, 10),
Dog("Buddy", 12, 35)]
# 调用每个动物的方法
for animal in animals:
animal.eat()
animal.speak()
```
运行以上代码,输出结果为:
```
Tommy is eating bones.
Tommy is barking.
Kitty is eating fish.
Kitty is meowing.
Lucky is eating bones.
Lucky is barking.
Tweety is eating seeds.
Tweety is chirping.
Buddy is eating bones.
Buddy is barking.
```
以上代码就实现了利用继承类设计四个类:Animal类,Dog类,Cat类和Bird类的问题,并且模拟了动物园新进一批动物的过程,用循环依次调用列表中每个元素的吃、说话方法。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)