单选题

下列设计模式中, (     ) 模式既是类结构型模式,又是对象结构型模式。此模式与 (请作答此空) 模式类似的特征是,都给另一个对象提供了一定程度上的间接性,都涉及到从自身以外的一个接口向这个对象转发请求。

【正确答案】 D
【答案解析】

适配器模式(Adapter)用于将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
适配器有类结构和对象结构两种模式,如下图所示。在类适配器中,因为Adapter类既继承了Adaptee(被适配类),也实现了Target接口,在Client类中我们可以根据需要选择并创建任一种符合需求的子类,来实现具体功能。在对象适配器中,Adapter不是使用多继承或继承再实现的方式,而是使用直接关联,或者称为委托的方式。