添加创建学生实例的构造方法,和一个计算学生年龄的实例方法
时间: 2024-02-09 19:13:34 浏览: 28
好的,我来为你添加构造方法和计算学生年龄的实例方法:
```python
class Student:
def __init__(self, id, age, name):
self.id = id
self.age = age
self.name = name
def get_age(self):
return self.age
@classmethod
def from_birth_year(cls, id, name, birth_year):
age = datetime.datetime.now().year - birth_year
return cls(id, age, name)
```
其中,构造方法 `__init__` 接收三个参数(学号、年龄和姓名),并将它们赋值给对应的实例属性。
方法 `get_age` 是一个实例方法,用于返回学生的年龄。
方法 `from_birth_year` 是一个类方法,它接收三个参数(学号、姓名和出生年份),并通过当前年份计算出学生的年龄,并返回一个新的学生对象。
使用 `from_birth_year` 方法创建学生对象的示例:
```python
student2 = Student.from_birth_year('002', '李四', 2005)
```
这里创建了一个学号为'002',出生年份为2005年,姓名为'李四'的学生对象,通过 `from_birth_year` 方法计算出学生的年龄为16岁,并将其赋值给实例属性 `age`。