第三章测试
1.在软件开发中,封装具有如下优势( )
A:改善通用性和维护性,因为需要复用构件、组合成软件,需要构件尽可能通用、正确;理解一个构件无须理解整个程序,自由地改进构件的内部,有助于维护程序。 B:构件的内部修改对外部的影响变小,减少了修改引起整个程序范围的“波动效应”。 C:封装使得编程更加简单清晰,提高了代码的执行效率。 D:构件的外部不能随意访问构件的内部数据和操作,而只允许通过由构件提供的外部可用的操作来访问其内部,这就降低了构件间的耦合度,还可以避免外部错误对程序其他部分的“交叉感染”。 E:更容易快速开发正确的程序,因为程序员在编写一个构件时只需考虑少量事情。在一个包含多人的项目中特别有用:一旦程序员们确定了构件间的交互,每个人都可以独立地开发和测试分配的构件。事实上,没有封装,是不可能编写、调试和维护非常大的程序的。
答案:ABDE
2.有些语言如( )允许以重载方式对运算符“+”定义不同的意义(运算符重载),比如字符串的连接、有理数的加法等。
A:C++   B:Python C:JAVA   D:C#   E:Objective-C   3.用面向对象开发软件时,我们把系统模块化成类,但不封装属性及其操作的方法。( ) 
A:错 B:对 4.实现开闭原则的核心是共性和个性分析,关键是抽象。( ) 
A:错 B:对 5.教材3.3.3节案例设计二中第5部分在讨论数据集的数据结构时,分析了在Exercise中存储算式容器的5个策略,其中一个策略是让Exercise继承一个容器数据结构类,比如ArrayList。但是,这个策略不符合继承关系。 
A:错 B:对

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(8) dxwkbang
返回
顶部