阅读下列说明,回答问题,将解答写在答题纸的对应栏内。 【说明】 某软件的积分计算模块每天定时根据用户发布的文章数、文章阅读数来统计用户所获取的积分,用户分为普通用户和专家用户,两类用户具有不同的积分系数。 图4-1是该模块的类图,图中属性和

admin2020-05-31  30

问题 阅读下列说明,回答问题,将解答写在答题纸的对应栏内。
【说明】
    某软件的积分计算模块每天定时根据用户发布的文章数、文章阅读数来统计用户所获取的积分,用户分为普通用户和专家用户,两类用户具有不同的积分系数。
    图4-1是该模块的类图,图中属性和操作前的“+”、“#”和“-”分别表示公有成员、保护成员和私有成员。

其中:
(1)类Expert重新实现了类User的方法calPoints()。
(2)方法calPoints()根据每个用户每天的文章数(articleNum)、文章阅读数(readNum)来计算当天的积分。
(3)类System中的方法statPoints()中首先调用了该类的方法load(),获取本系统用户列表,然后调用了类User中的方法calPoints()。
现拟采用面向对象的方法进行测试。
(1)请结合题干说明中的描述,给出测试类User方法calPoints()时的测试序列。
(2)请给出图4-1中各个类的测试顺序。

选项

答案(1)new Usen()—setArticleNum()—setReadNum()—calPoints()—getPoints() (2)User—Expert—System

解析 在测试方法calPoints()之前,需要先构造对象,设置文章数和文章阅读数,即要先调用构造函数new User(),然后setArticleNum()、setReadNum(),之后要打印结果看是否计算正确,需要调用getPoints()查看结果。User和Expert是父类和子类的关系,User和System是关联关系,所以顺序是User-Expert-System。
转载请注明原文地址:https://kaotiyun.com/show/NzPZ777K
0

最新回复(0)