定义一个学生类Student和教师类Teacher,学生类的数据成员有姓名、学生、专业,教师类的数据成员有姓名、工作证号、职称、课程、每周课时数。再定义一个助教类TA,继承学生类和教师类,该类可以使用学生类的全部数据成员以及教师类的课程和每周课时数的数据成员。要求:每个类提供自定义的构造函数和析构函数,并通过同名函数ShowInfo来显示全部数据成员的值。
时间: 2024-02-15 15:01:29 浏览: 64
建立一个名为Student的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄。还有以下两个成员函数:一个用于初始化学生姓名、学号、性别和年龄的构造函数,一个用于输出学生信息的函数。编写一个主函数。声明一个学学生对象。然后调用成员函数在屏幕输出学生信息。
4星 · 用户满意度95%
好的,根据您的要求,我可以为您编写以下代码:
```python
class Student:
def __init__(self, name, student_id, major):
self.name = name
self.student_id = student_id
self.major = major
def __del__(self):
print('学生对象已被删除')
def ShowInfo(self):
print('姓名:', self.name)
print('学号:', self.student_id)
print('专业:', self.major)
class Teacher:
def __init__(self, name, work_id, title, course, weekly_hours):
self.name = name
self.work_id = work_id
self.title = title
self.course = course
self.weekly_hours = weekly_hours
def __del__(self):
print('教师对象已被删除')
def ShowInfo(self):
print('姓名:', self.name)
print('工号:', self.work_id)
print('职称:', self.title)
print('课程:', self.course)
print('每周课时数:', self.weekly_hours)
class TA(Student, Teacher):
def __init__(self, name, student_id, major, work_id, title, course, weekly_hours):
Student.__init__(self, name, student_id, major)
Teacher.__init__(self, name, work_id, title, course, weekly_hours)
def __del__(self):
print('助教对象已被删除')
def ShowInfo(self):
Student.ShowInfo(self)
Teacher.ShowInfo(self)
```
以上代码定义了三个类:`Student`、`Teacher`和`TA`。每个类都提供了自定义的构造函数和析构函数,并通过同名函数`ShowInfo`来显示全部数据成员的值。`TA`类继承了`Student`类和`Teacher`类的数据成员,并在`ShowInfo`方法中分别调用了`Student`类和`Teacher`类的`ShowInfo`方法,以显示全部数据成员的值。
阅读全文