试图理解桥接模式

Trying to understand the bridge pattern

我正在尝试阅读设计模式,目前正在阅读桥接模式。

它指出

将功能抽象与实现分离,使两者可以独立变化

我在这个 link 上通过这个例子 : https://www.journaldev.com/1491/bridge-design-pattern-java

有人可以向我解释一下这个例子如何变成这个大胆的陈述吗?

非常感谢。

Bridge 将接口和实现拆分为多个部分。在您的示例中,您将获得 2 个不同的接口 ShapeColor。它们将生成自己的 class 层次结构,并且由于它们是独立的,所以它们都可以变化。

您最终会得到可以在运行时组合的多种形状和多种颜色。这是使用 composition 而不是 inheritance 实现的。 Shape 的每个实例在创建时都需要一个 Color 的实例,这就是您获得 红色三角形 绿色三角形的方式五边形 ShapeColor.

的任何其他组合

层次结构没有紧密耦合,它们仅在接口级别进行通信。