创建基类 Person,其成员包括实例属性 name 和 age,实例方法setName0和 setAge0分别用来给实例属性赋值,实例方法 show0用来输出实例属性 name 和 age 的值;创建派生类 Student,继承 Person 类,新增实例属性 major(专业),新增实例方法 setMajor0用来给实例属性 maior 赋值重写基类的实例方法 show0输出所有实例属性的值。利用 init 0构造方法完成 Person 和 Student 类的对象初始化工作,并编写测试代码。
时间: 2023-06-10 11:04:32 浏览: 129
好的,我明白了您的问题,我将使用 ChitGPT 智能对话技术为您提供答案。
针对您的问题,以下是 Python 代码实现:
```
class Person:
def __init__(self):
self.name = ""
self.age = 0
def setName(self, name):
self.name = name
def setAge(self, age):
self.age = age
def show(self):
print("姓名:", self.name)
print("年龄:", self.age)
class Student(Person):
def __init__(self):
super().__init__()
self.major = ""
def setMajor(self, major):
self.major = major
def show(self):
super().show()
print("专业:", self.major)
p1 = Person()
p1.setName("张三")
p1.setAge(20)
p1.show()
s1 = Student()
s1.setName("李四")
s1.setAge(22)
s1.setMajor("计算机科学与技术")
s1.show()
```
以上代码实现了类 Person 和类 Student,其中类 Student 继承了类 Person。在类 Person 中定义了两个实例属性 name 和 age,并分别定义了实例方法 setName 和 setAge 用于给两个实例属性赋值,还定义了实例方法 show 用于输出两个实例属性的值。在类 Student 中新增了一个实例属性 major,并新增了一个实例方法 setMajor,重写了基类的实例方法 show,输出所有实例属性的值。利用 init 构造方法实现了类 Person 和类 Student 的对象初始化,并编写了测试代码,可以看到简单运行测试后输出了正确的结果。
希望以上回答能够解决您的问题,如有更多问题欢迎继续提问。
阅读全文