软件22-11班:继承与派生实践:矩形类、学生与教授体系

需积分: 9 0 下载量 69 浏览量 更新于2024-08-04 收藏 11KB MD 举报
实验六主要探讨了面向对象编程中的关键概念——继承与派生。在这个实验中,学习者将深入理解如何创建和利用继承来扩展已有类的功能,以及派生类如何访问和重写基类的成员。 首先,实验涉及一个基础的图形类Point,它包含两个整型数据成员x和y。然后,通过公有继承,创建了一个Rectangle类,继承自Point类。学生需要实现Rectangle类的构造函数、析构函数,以及一个用于打印矩形信息的方法。这个方法应该包括矩形的顶点坐标、长度和宽度,以及计算并显示面积。这有助于理解派生类如何操作基类的属性,并且展示构造函数和析构函数在继承体系中的作用。 接着,实验引入了继承的另一个实例:设计一个名为Student的基础类,包含了学号、姓名、性别和专业的属性。为了进一步扩展功能,学生需创建一个名为PostGraduate的派生类,继承自Student,添加导师、津贴和研究方向等额外信息。同时,学生需要实现display()函数以显示这两个类的成员信息,这将展示如何在派生类中重写或扩展基类的行为。 第三个部分涉及到Teacher和Professor类的派生关系。首先,定义了一个Teacher基类,包含公共成员函数showInfo(),以及私有数据成员。然后,教授类Professor作为Teacher的派生类,增加了职称title和出生日期(Date对象)作为私有成员。教授类的display()函数展示了如何调用父类的成员函数以及如何处理复杂的继承结构。实验要求确保构造函数正确,同时关注通过指针调用成员函数的结果分析。 最后,实验引导学生定义一个Document基类,并从Document派生出Book类,增加数据成员pageCount。这展示了如何通过继承来定义具有特定特性的子类,并可能要求实现特有的行为,如Book类可能需要有自己的显示方法,或者基于文档的其他功能。 这个实验旨在通过实际编程练习,让学生熟练掌握面向对象编程中的继承机制,包括类的派生、访问修饰符的应用、构造函数和析构函数的编写,以及如何设计和调用成员函数。通过这些实践,学生将能更好地理解面向对象设计模式,并能在实际项目中灵活运用继承这一核心概念。