阅读下列说明,回答问题,将解答写在答题纸的对应栏内。 某汽车维修公司的工时计算模块每天定时根据系统登记的维修信息统计维修工的工时工资。维修工分为学徒、普通维修工和高级维修工三种,三种维修工有不同的时薪标准。 图4一1是该模块的类图,图中属性和操作前的“+”

admin2021-03-19  37

问题 阅读下列说明,回答问题,将解答写在答题纸的对应栏内。
某汽车维修公司的工时计算模块每天定时根据系统登记的维修信息统计维修工的工时工资。维修工分为学徒、普通维修工和高级维修工三种,三种维修工有不同的时薪标准。
图4一1是该模块的类图,图中属性和操作前的“+”  “#”和“-”分别表示公有成员、保护成员和私有成员。

其中:
(1)类Engineer表示普通维修工。
(2)类studentEngineer和seniorEngineer都重新实现了类Engineer的方法calReward()。
(3)方法calReward()根据每个维修工每天的工时数(workTime)、时薪(hourSalary)来计算当天的工时工资。
(4)方法getReward()调用方法calReward()获取工时工资并打印显示。
(5)类System中的方法statReward()首先调用了该类的方法load(),获取本系统工程师列表,然后调用了类Engineer中的方法calReward()。
现拟采用面向对象的方法进行测试。
(1)图4-1所示的类图中,类System和Engineer之间是什么关系?
(2)类seniorEngineer重新实现了类Engineer的方法ealReward(),这是面向对象的什么机制?

选项

答案(1)关联关系 (2)多态

解析 本问题考查面向对象的基本概念。
类和类之间的关系主要有继承、关联和依赖三种。其中,关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用。因此,类System和Engineer之间是关联关系。
面向对象中的多态指的是多种表现形式,具体来说,可以用“一个对外接口,多个内在实现方法”表示。多态性的实现,一般通过在派生类中重定义基类的虚函数来实现。因此,类seniorEngineer重新实现了类Engineer的方法calReward(),这是多态机制。
转载请注明原文地址:https://jikaoti.com/ti/ueB7FFFM
0

最新回复(0)