自主命题(定义超类,并通过继承定义子类,在子类中重写方法)的编程代码
时间: 2024-03-12 07:45:49 浏览: 51
好的,下面是一个简单的 Python 代码示例:
```python
# 定义超类 Animal
class Animal:
def __init__(self, name, age):
self.name = name
self.age = age
def make_sound(self):
print("动物发出叫声")
# 定义子类 Dog,继承自 Animal
class Dog(Animal):
def __init__(self, name, age, breed):
super().__init__(name, age)
self.breed = breed
# 重写 make_sound 方法
def make_sound(self):
print("汪汪汪")
# 定义子类 Cat,继承自 Animal
class Cat(Animal):
def __init__(self, name, age, color):
super().__init__(name, age)
self.color = color
# 重写 make_sound 方法
def make_sound(self):
print("喵喵喵")
# 创建 Dog 对象并调用方法
my_dog = Dog("小黄", 3, "金毛")
my_dog.make_sound() # 输出:汪汪汪
# 创建 Cat 对象并调用方法
my_cat = Cat("小白", 2, "白色")
my_cat.make_sound() # 输出:喵喵喵
```
在这个示例中,我们定义了一个超类 Animal,它有一个构造函数和一个 make_sound 方法。然后我们定义了两个子类 Dog 和 Cat,它们都继承了 Animal 类,并分别重写了 make_sound 方法。最后我们创建了一个 Dog 对象和一个 Cat 对象,并调用它们的 make_sound 方法,分别输出汪汪汪和喵喵喵。
阅读全文