建立一个普通人员类 Person, 包含姓名 (mname)、性别(m_ sex)、年龄(m_age)成员变 量。 (1建立 Person 类,包含 Private 成员 m name, m sex, mage 成员变量: (2)建立 Person 的构造函数; (3)建立一个显示方法 show0,显示该对象的所 有数据; (4)派生一个学生类 Student,增加班级 (m_class),专业(m_major),设计这些类的构造 函数; (5)建立 m cass、 m maior 对应的属性函数 sClass0, sMajor0); (6建立显示成员方法 show0,显示该学生对象 所有成员数据。
时间: 2024-03-15 20:46:23 浏览: 84
同一实体集内m∶n联系为关系模式的实例-第4讲数据库的设计(二) )
下面是实现上述要求的 Python 代码:
```python
class Person:
def __init__(self, name, sex, age):
self.__mname = name
self.__msex = sex
self.__mage = age
def show(self):
print("Name: ", self.__mname)
print("Sex: ", self.__msex)
print("Age: ", self.__mage)
class Student(Person):
def __init__(self, name, sex, age, sclass, smajor):
super().__init__(name, sex, age)
self.__mclass = sclass
self.__mmajor = smajor
@property
def sClass(self):
return self.__mclass
@property
def sMajor(self):
return self.__mmajor
def show(self):
super().show()
print("Class: ", self.__mclass)
print("Major: ", self.__mmajor)
```
上述代码中,Person 类包含了私有成员变量 `__mname`、`__msex`、`__mage`,并且定义了构造函数 `__init__()` 和显示方法 `show()`。Student 类继承自 Person 类,并且增加了班级和专业两个成员变量 `__mclass`、`__mmajor`,并且定义了构造函数 `__init__()`、属性函数 `sClass()`、`sMajor()` 和显示方法 `show()`。其中,`@property` 装饰器用于定义属性函数。可以通过以下方式创建 Person 和 Student 对象并访问它们的成员变量和方法:
```python
person = Person("John", "Male", 30)
person.show()
student = Student("Alice", "Female", 20, "Class A", "Computer Science")
student.show()
print("Class: ", student.sClass)
print("Major: ", student.sMajor)
```
输出:
```
Name: John
Sex: Male
Age: 30
Name: Alice
Sex: Female
Age: 20
Class: Class A
Major: Computer Science
```
阅读全文