试图理解桥接模式

3
我正在尝试阅读设计模式,目前正在学习桥接模式。
它表明:
将功能抽象与实现分离,使得两者可以独立变化。
我正在查看此链接上的示例: https://www.journaldev.com/1491/bridge-design-pattern-java enter image description here 请问有人能解释一下这个示例如何体现上述粗体语句吗?
非常感谢。

1
提醒任何试图回答的人:在应用桥接模式之前,查看上面相同链接中的原始类图可能会有所帮助。 - Tim Biegeleisen
@Tim 如果您能尝试解释一下,那将非常棒。谢谢。 - Nicky
听起来桥接模式是通过组合实现多重继承的一种方式? - Ruan Mendes
1个回答

4
“Bridge”将接口和实现拆分成多个部分。在您的示例中,将得到2个不同的接口“Shape”和“Color”。它们将生成自己的类层次结构,并且由于它们是独立的,因此它们都可以变化。
在运行时,您将得到多个形状和多种颜色的组合。这是通过使用“组合”而不是“继承”实现的。每个“Shape”的实例在创建时需要一个“Color”的实例,这是获得“红色三角形”或“绿色五边形”或任何其他“Shape”和“Color”组合的方法。
这些层次结构没有紧密耦合,它们只在接口级别进行通信。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接