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

2023-09-01

A.桥接(Bridge)
B.适配器(Adapter)
C.组成(Composite)
D.装饰(Decorator)

参考答案:B

适配器模式(Adapter)用于将一个类的接口转换成客户希望的另外一个接口Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作适配器有类结构和对象结构两种模式,如下图所示在类适配器中,因为Adapter类既继承了Adaptee(被适配类),也实现了Target接口,在Client类中我们可以根据需要选择并创建任一种符合需求的子类,来实现具体功能在对象适配器中,Adapter不是使用多继承或继承再实现的方式,而是使用直接关联,或者称为委托的方式
装饰器模式用于动态地给一个对象添加一些额外的职责或者行为装饰器模式提供了改变子类的灵活方案装饰器模式在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能它是通过创建一个包装对象,也就是装饰来包裹真实的对象当用于一组子类时,装饰器模式更加有用如果你拥有一组子类(从一个父类派生而来),你需要在与子类独立使用情况下添加额外的特性,你可以使用装饰器模式,以避免代码重复和具体子类数量的增加

相关推荐