定义一个Student类,要求: 1、每个学生都有学号stuID(string)和姓名stuName(string) 2、体现字段封装性 3、通过构造方法给每个字段赋值 4、通过showMsg()方法显示字段的值 5、并提供Test类进行测试,要求实例化3个学生对象放到数组中并显示学生的信息
时间: 2023-05-20 19:07:03 浏览: 173
好的,以下是回答:
可以这样定义一个Student类:
```python
class Student:
def __init__(self, stuID, stuName):
self.__stuID = stuID
self.__stuName = stuName
def showMsg(self):
print("学号:", self.__stuID)
print("姓名:", self.__stuName)
```
这里使用了双下划线来实现字段的封装性,即将字段设为私有属性,外部无法直接访问。通过构造方法给每个字段赋值,并提供showMsg()方法显示字段的值。
下面是Test类的代码:
```python
class Test:
def __init__(self):
self.students = []
def addStudent(self, stu):
self.students.append(stu)
def showStudents(self):
for stu in self.students:
stu.showMsg()
test = Test()
test.addStudent(Student("001", "张三"))
test.addStudent(Student("002", "李四"))
test.addStudent(Student("003", "王五"))
test.showStudents()
```
这里定义了一个Test类,用于测试Student类。Test类中有一个students属性,用于存储学生对象。addStudent()方法用于向students列表中添加学生对象,showStudents()方法用于遍历students列表并调用每个学生对象的showMsg()方法来显示学生信息。
运行Test类的showStudents()方法,即可输出三个学生的信息。
阅读全文