问题
单项选择题
若要封装对象,并提供不同的接口时,可采用 (33) ;若要将请求封装成对象,则可采用 (34) ;若要将可互换的行为封装起来,并采用委托的方式来决定使用哪一个,则可采用 (35) 。
(35)处填()。
A.抽象工厂模式
B.策略模式
C.迭代器模式
D.单身模式
答案
参考答案:B
解析:
适配器模式将一个类的接口转化成客户希望的另外一个接口,使得原本接口不兼容而不能一起工作的那些类可以一起工作。适配器模式的主要目的是为了在两个互不兼容的数据格式之间进行信息格式转换。可见,第(33)空应选择适配器模式。
命令模式将一个请求封装成一个对象,从而可用不同的请求对客户进行参数化,或对请求进行排队或者记录请求日志,它还支持可撤消的操作,简单地说,命令模式将方法调用封装起来,将运算块封装成形,调用此运算的对象不必关心事情是具体如何完成的,只需要知道如何使用包装好的方法来完成事情就可以了。可见,第(34)空应选择命令模式。
策略模式定义一系列的算法(算法族),并将它们分别封装起来,而且使它们可以相互替换,该模式使得算法的变化可独立于使用它的客户。可见,第(35)空应选择策略模式。