请编码实现动物世界的继承关系: 动物(Animal)具有行为:吃(eat)、睡觉(sleep) 动物包括:兔子(Rabbit),老虎(Tiger) 这些动物吃的行为各不相同(兔子吃草,老虎吃肉);但睡觉的行为是一致的。 请通过继承实现以上需求,并进行测试。
时间: 2023-12-23 07:02:25 浏览: 198
好的,以下是实现动物世界继承关系的Python代码:
```python
class Animal:
def eat(self):
pass
def sleep(self):
print("动物正在睡觉")
class Rabbit(Animal):
def eat(self):
print("兔子正在吃草")
class Tiger(Animal):
def eat(self):
print("老虎正在吃肉")
```
上面的代码中,我们定义了一个 Animal 类作为所有动物的基类,它有两个行为:吃和睡觉。然后,我们定义了 Rabbit 类和 Tiger 类作为 Animal 类的子类,它们分别重写了 eat() 方法,实现了兔子吃草和老虎吃肉的行为。sleep() 方法在 Animal 类中已经实现,因此不需要在子类中重写。
接下来,我们可以进行测试:
```python
# 创建动物对象
animal = Animal()
rabbit = Rabbit()
tiger = Tiger()
# 测试动物对象的行为
animal.eat() # 什么也不做
animal.sleep() # 输出:动物正在睡觉
# 测试兔子对象的行为
rabbit.eat() # 输出:兔子正在吃草
rabbit.sleep() # 输出:动物正在睡觉
# 测试老虎对象的行为
tiger.eat() # 输出:老虎正在吃肉
tiger.sleep() # 输出:动物正在睡觉
```
以上代码输出的结果应该是:
```
动物正在睡觉
动物正在睡觉
兔子正在吃草
动物正在睡觉
老虎正在吃肉
动物正在睡觉
```
这表明我们已经成功实现了动物世界的继承关系,并且各个动物对象的行为也符合我们的预期。
阅读全文