Python 学生类和大学生子类实现:属性、方法和继承

本教程将指导您如何使用 Python 编写一个 Student 类来模拟学生信息,并使用继承创建一个 Undergraduate 类来表示大学生。

1. Student

Student 类包含以下属性:

  • school:学校名称
  • sid:学号
  • gender:性别
  • birth:出生日期

它还包含以下方法:

  • setName(name):设置学生姓名
  • setScore(score):设置学生成绩
  • show():打印输出所有属性
class Student:
    def __init__(self, school, sid, gender, birth):
        self.school = school
        self.sid = sid
        self.gender = gender
        self.birth = birth
        
    def setName(self, name):
        self.name = name
        
    def setScore(self, score):
        self.score = score
        
    def show(self):
        print('Name:', self.name)
        print('School:', self.school)
        print('Student ID:', self.sid)
        print('Gender:', self.gender)
        print('Birth:', self.birth)

2. Undergraduate

Undergraduate 类继承自 Student 类,它包含父类的所有属性和方法,并添加以下属性和方法:

  • 附加属性:
    • department:系别
    • major:专业
  • 方法:
    • setDepartment(department):设置系别
    • setMajor(major):设置专业
    • show():覆盖父类的 show 方法,打印输出所有属性(包括附加属性)
class Undergraduate(Student):
    def __init__(self, school, sid, gender, birth, department, major):
        super().__init__(school, sid, gender, birth)
        self.department = department
        self.major = major
        
    def setDepartment(self, department):
        self.department = department
        
    def setMajor(self, major):
        self.major = major
        
    def show(self):
        super().show()
        print('Department:', self.department)
        print('Major:', self.major)

3. 使用示例

# 创建一个大学生对象
student = Undergraduate('北京大学', '20231001', '男', '2001-01-01', '计算机系', '软件工程')

# 设置姓名和成绩
student.setName('张三')
student.setScore(95)

# 打印输出所有属性
student.show()

输出结果:

Name: 张三
School: 北京大学
Student ID: 20231001
Gender: 男
Birth: 2001-01-01
Department: 计算机系
Major: 软件工程

本教程展示了如何使用 Python 创建一个学生类,并使用继承创建一个大学生子类。希望本教程能帮助您更好地理解面向对象编程中的继承概念。

Python 学生类和大学生子类实现:属性、方法和继承

原文地址: https://www.cveoy.top/t/topic/nVAr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录