设计一个Animal(动物)类,包括颜色属性和叫方法。再设计一个Fish(鱼)类,包括尾巴和颜色两个属性,以及叫方法。要求:Fish类继承Animal类,重写构造方法和叫方法。代码及注释
时间: 2024-05-04 22:18:55 浏览: 99
```python
class Animal:
def __init__(self, color):
self.color = color
def shout(self):
print("This animal is shouting...")
class Fish(Animal):
def __init__(self, color, tail):
super().__init__(color)
self.tail = tail
def shout(self):
print("This fish is making bubbles...")
# 测试
fish = Fish("blue", "big")
print(fish.color) # 输出blue
print(fish.tail) # 输出big
fish.shout() # 输出This fish is making bubbles...
```
注释:
- Animal类:包括一个构造方法和一个叫方法,构造方法接收一个color参数,叫方法输出"This animal is shouting..."。
- Fish类:继承自Animal类,包括一个构造方法和一个叫方法,构造方法接收color和tail两个参数,叫方法输出"This fish is making bubbles..."。
- 构造方法中使用super()调用父类的构造方法,将color参数传递给父类的构造方法,同时将tail属性赋值给自身。
- 叫方法中使用override重写了父类的叫方法,输出鱼的特有声音。
阅读全文