桥接设计模式的案例实现
2026/5/23 22:07:36 网站建设 项目流程

案例实现

根据前面的定义,如果我们使用桥接模式,我们可以将汽车的类型和颜色分别作为两个独立的维度来处理。我们可以创建两个抽象类 Car 和 Color,并为每种汽车类型和颜色创建具体的子类。然后,我们可以使用桥接模式将汽车类型和颜色抽象概念连接起来。如下图所示:

通过使用桥接模式,我们可以轻松地添加新的汽车类型和颜色,而不需要修改已有的代码。例如,我们可以添加 truck 类来表示卡车,并且可以在不修改现有代码的情况下,将卡车与任何颜色进行组合

具体代码如下所示:

抽象卡车类型

ublic abstract class AbstractCar { private AbstractColor color; public AbstractCar(AbstractColor color) { this.color = color; } public abstract void drawCar(); public void drawColor() { color.drawColor(); } }

抽象颜色

public abstract class AbstractColor { public abstract void drawColor(); }

具体公交车

public class Bus extends AbstractCar{ public Bus(AbstractColor color) { super(color); } @Override public void drawCar() { System.out.println("draw bus car"); } }

具体卡车

public class Truck extends AbstractCar{ public Truck(AbstractColor color) { super(color); } @Override public void drawCar() { System.out.println("draw truck car"); } }

蓝色

public class Blue extends AbstractColor{ @Override public void drawColor() { System.out.println("draw blue color"); } }

红色

public class Red extends AbstractColor { @Override public void drawColor() { System.out.println("draw red color"); } }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询