编写宠物类Pet及其子类Dog(狗)、Penguin(企鹅)等,其中宠物类定义了看病的方法,子类分别重写了看病的方法。请编写测试方法分别实例化各种具体的宠物,调用看病的方法
时间: 2024-10-19 20:15:23 浏览: 91
在Python中,我们可以创建一个简单的类结构来表示这个场景:
```python
class Pet:
def __init__(self, name):
self.name = name
def see_vet(self):
print(f"{self.name}去看医生...")
# 宠物子类,例如狗和企鹅
class Dog(Pet):
def see_vet(self):
print(f"{self.name}是忠诚的小狗,正在接受兽医检查...")
class Penguin(Pet):
def see_vet(self):
print(f"{self.name}这只可爱的企鹅也有健康问题,去看过兽医...")
# 测试方法
def test_pet_classes():
dog = Dog("旺财")
penguin = Penguin("波波")
dog.see_vet() # 输出: "旺财是忠诚的小狗,正在接受兽医检查..."
penguin.see_vet() # 输出: "波波这只可爱的企鹅也有健康问题,去看过兽医..."
if __name__ == "__main__":
test_pet_classes()
```
在这个例子中,`Pet` 类是一个基类,它有一个通用的 `see_vet` 方法。`Dog` 和 `Penguin` 是 `Pet` 的子类,并各自重写了 `see_vet` 方法以体现各自的特性。`test_pet_classes` 函数用于测试各个宠物对象调用看病方法的行为。
阅读全文