需求: 人类:(Person) 成员变量:姓名,年龄 老师类: 成员变量:姓名,年龄 成员方法:teach 年龄为30岁的老师正在讲课 学生类: 成员变量:姓名,年龄,成绩 成员方法:stady
时间: 2024-02-24 21:54:41 浏览: 79
runtime获取属性和成员变量方法
这是一个简单的面向对象编程的例子,涉及到三个类:Person(人类)、Teacher(老师类)和Student(学生类)。每个类都有自己的成员变量和成员方法,以下是每个类的具体实现:
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
class Teacher(Person):
def __init__(self, name, age):
super().__init__(name, age)
def teach(self):
print(f"{self.name}正在讲课")
class Student(Person):
def __init__(self, name, age, score):
super().__init__(name, age)
self.score = score
def study(self):
print(f"{self.name}正在学习")
```
在这个例子中,Person类是父类,而Teacher和Student类是子类。Teacher和Student类都继承自Person类,并且分别定义了自己的成员变量和成员方法。Teacher类的成员方法是teach,用于表示老师正在讲课,而Student类的成员方法是study,用于表示学生正在学习。在Teacher类的构造函数中,调用了父类Person的构造函数,以初始化父类的成员变量name和age。在Student类的构造函数中,除了调用父类Person的构造函数以初始化name和age,还定义了自己的成员变量score。
如果要创建一个名叫张三、年龄为30岁的老师对象,并调用teach方法,可以这样写:
```python
teacher = Teacher("张三", 30)
teacher.teach()
```
如果要创建一个名叫李四、年龄为20岁、成绩为90分的学生对象,并调用study方法,可以这样写:
```python
student = Student("李四", 20, 90)
student.study()
```
这样就完成了一个简单的面向对象编程的例子。
阅读全文