某软件公司欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。在明确用户需

admin2022-08-02  47

问题 某软件公司欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。在明确用户需求后,该公司的架构师决定采用Bridge模式实现该软件,并设计UML类图如下图所示。图中与Bridge模式中的“Abstraction”角色相对应的类是(6),与“Implementor”角色相对应的类是(7)。【回答括号6】A. ShapeB. Drawing C. Rectangle D. V2Drawing

选项 A. Shape
B. Drawing
C. Rectangle
D. V2Drawing

答案 A

解析 桥接模式将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。桥接模式类似于多重继承方案,但是多重继承方案往往违背了类的单一职责原则,其复用性比较差,桥接模式是比多重继承方案更好的解决方法。

·Abstraction定义抽象类的接口;维护一个指向Implementor类型对象的指针。

·RefinedAbstraction扩充由Abstraction定义的接口。

·Implementor定义实现类的接口,该接口不一定要与Abstraction的接口完全一致;事实上这两个接口可以完全不同。一般来说,Implementor接口仅提供基本操作,而Abstraction则定义了基于这些基本操作的较高层次的操作。

·ConcreteImplementor实现Implementor接口并定义它的具体实现。

图中与Bridge模式中的“Abstraction”角色相对应的类是Shape,与“Implementor”角色相对应的类是Drawing。
转载请注明原文地址:https://tihaiku.com/congyezige/2397229.html

最新回复(0)