使用Python完成: 设计Bird、fish类,都继承自Animal类,实现其方法print_info(),输出信息。 Animal类具有属性年龄(age),方法print_info():显示年龄“我今年XX岁了” Brid类添加颜色(color)属性,方法print_info():显示颜色和年龄“我是一只XX色的鸟,我今年XX岁了” Fish类添加重量(weight)属性,方法print_info():显示重量和年龄“我是一条XX斤重的鱼,我今年XX岁了”
时间: 2024-03-22 20:41:26 浏览: 141
可以使用如下的Python代码来实现这个要求:
```python
class Animal:
def __init__(self, age):
self.age = age
def print_info(self):
print("我今年{}岁了".format(self.age))
class Bird(Animal):
def __init__(self, age, color):
super().__init__(age)
self.color = color
def print_info(self):
print("我是一只{}色的鸟,我今年{}岁了".format(self.color, self.age))
class Fish(Animal):
def __init__(self, age, weight):
super().__init__(age)
self.weight = weight
def print_info(self):
print("我是一条{}斤重的鱼,我今年{}岁了".format(self.weight, self.age))
```
在这个代码中,我们首先定义了一个基类 `Animal`,它有一个属性 `age` 和一个方法 `print_info()`,用于显示年龄信息。然后我们分别定义了 `Bird` 和 `Fish` 两个子类,它们都继承自 `Animal`。子类有各自的属性和方法,用于显示更多的信息。
在子类的构造函数中,我们使用 `super()` 函数来调用父类的构造函数,以便正确地设置 `age` 属性。然后,我们在子类中重写了 `print_info()` 方法,以便输出更多的信息。
测试代码:
```python
bird = Bird(2, "红")
bird.print_info() # 我是一只红色的鸟,我今年2岁了
fish = Fish(1, 5)
fish.print_info() # 我是一条5斤重的鱼,我今年1岁了
```
阅读全文