您的位置:首页 > 新闻 > 热点要闻 > 济南快速网站制作公司_石家庄网站制作官网_什么是淘宝搜索关键词_自动推广工具

济南快速网站制作公司_石家庄网站制作官网_什么是淘宝搜索关键词_自动推广工具

2025/3/18 16:11:15 来源:https://blog.csdn.net/qq_39505245/article/details/146115248  浏览:    关键词:济南快速网站制作公司_石家庄网站制作官网_什么是淘宝搜索关键词_自动推广工具
济南快速网站制作公司_石家庄网站制作官网_什么是淘宝搜索关键词_自动推广工具

概述

桥接模式Bridge Pattern: 是一种结构型设计模式。
旨在将抽象部分实现部分分离,使它们可以独立变化。
它通过组合代替继承,解决类爆炸问题,并提高系统的灵活性和可扩展性。

组成部分

【抽象部分】(Abstraction):定义高层控制逻辑,并包含一个对实现部分的引用。
扩展抽象部分(Refined Abstraction):对抽象部分的扩展,提供更多控制逻辑。
【实现部分】(Implementor):定义底层操作的接口,供抽象部分调用。
具体实现部分(Concrete Implementor):实现实现部分的接口,提供具体操作。

一个背景案例

画图 : 画 不同形状的、不同颜色的 图形。
例如 : 三角形-红色的;三角形-绿色的;圆形-红色的;圆形-绿色的;
分析 : 把 形状定位为 抽象的部分,把 填充颜色定位为具体实现部分;画图形的时候,组合颜色一并填充。
当需要新增 形状 or 颜色 的时候,只需要新增一个类即可,在使用时可以自由组合。
实际上,此处的这个 Shap 抽象类,就相当于一个桥的作用
类图结构如下:

在这里插入图片描述

实现部分- Color

public interface Color {void fillColor();
}
public class ColorRed implements Color{@Overridepublic void fillColor() {System.out.println("填充红色");}
}
public class ColorGreen implements Color{@Overridepublic void fillColor() {System.out.println("填充绿色");}
}

抽象部分-Shap

public abstract class Shap {// 聚合 Color  protected Color color;public Shap(Color color) {this.color = color;}public abstract void draw();
}
public class ShapTriangle extends Shap{public ShapTriangle(Color color) {super(color);}@Overridepublic void draw() {System.out.println("绘制三角形");color.fillColor();}
}
public class ShapCircle extends Shap{public ShapCircle(Color color) {super(color);}@Overridepublic void draw() {System.out.println("画圆");color.fillColor();}
}

测试类

public class Test {public static void main(String[] args) {// 一个颜色的实现对象Color colorGreen = new ColorGreen();// 绘制不同的形状,组合上对应的颜色对象Shap shapCircle = new ShapCircle(colorGreen);shapCircle.draw();Shap shapTriangle = new ShapTriangle(colorGreen);shapTriangle.draw();}
}
执行效果:
画圆
填充绿色
绘制三角形
填充绿色

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com