3.定义PersonStudent,求如下:(1)定义一个Person类成员属性:Person类的?
属性通常包含姓名(name)、年龄(age)、性别(gender)等基本信息。
(2)在Person类中定义构造函数,并能够初始化上述属性。
(3)定义一个Student类,继承自Person类,增加一个属性:学号(student_id)。
(4)在Student类中定义构造函数,并能够初始化上述属性。
(5)重载Student类的构造函数,实现可以同时初始化Person类和自身的属性。
下面是实现上述需求的代码示例:
``` python
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
class Student(Person):
def __init__(self, name, age, gender, student_id):
super().__init__(name, age, gender)
self.student_id = student_id
def __init__(self, name, age, gender, student_id):
self.name = name
self.age = age
self.gender = gender
self.student_id = student_id
```
其中,代码中Person类有属性name、age和gender,在构造函数中能够初始化这些属性。Student类继承自Person类,并新增了一个属性student_id,在构造函数中能够初始化这些属性。同时,重载了构造函数,能够同时初始化Person类和Student类的属性。