刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

题目:阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。

【20分】

【说明】下图是某学校教师信息系统的一个类图,图中属性和方法前的"+"、"#"和"- " 分别表示公有成员、保护成员和私有成员。

其中:

(1)类Teacher表示教师类,类GradeLeader重新实现了类Teacher的方法 calSalary( )。

(2)方法calSalary( )根据每个教师的基本工资(basicSalary)、工作时间(workTime)来计算实际应发工资。方法getSalary( )调用方法calSalary( )获取实际应发工资并打印工资条。

(3)类School中的方法statSalary()中首先调用了该类的方法load( ),获取学校的教师的列表,然后调用了类Teacher中的方法calSalary( )。

现拟采用面向对象的方法进行测试。

请基于提供的类图信息,回答以下问题。 (1)类GradeLeader重新实现了类Teacher的方法calSalary(),这是面向对象的哪种机制?是否需要重新测试该方法?

使用微信搜索喵呜刷题,轻松应对考试!

答案:

(1)多态机制;需要重新测试,因为在子类中重新进行了定义,所以需要重新测试;

(2)需要重新测试,因为题干中明确说明了getSalary( )调用了改动过的函数calSalary( ),属于调用了改动过的成员函数,所以需要重新测试。

解析:

本题主要考察面向对象编程中的多态机制和继承机制。

(1)关于多态机制,多态是指在不同的对象上执行相同的操作,但具体实现可以根据对象的类型而有所不同。在类GradeLeader中,它重新实现了类Teacher的方法calSalary(),这意味着当使用Teacher类的引用调用calSalary()方法时,实际上执行的是GradeLeader类中定义的calSalary()方法,这是多态的体现。由于多态的特性,子类中对方法的重新定义可能会影响父类方法的调用,因此需要进行重新测试,以确保功能的正确性和稳定性。

(2)关于是否需要重新测试类GradeLeader中的方法getSalary(),答案是肯定的。因为getSalary()方法调用了改动过的calSalary()方法,如果calSalary()方法的功能或实现发生了变化,那么getSalary()方法的行为也可能受到影响。因此,为了确保getSalary()方法的正确性和整个工资计算流程的准确性,需要对getSalary()方法进行重新测试。

创作类型:
原创

本文链接:请基于提供的类图信息,回答以下问题。 (1)类GradeLeader重新实现了类Teacher的方

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share