您现在的位置是:亿华云 > 系统运维
设计模式系列-桥接模式
亿华云2025-10-03 04:21:49【系统运维】5人已围观
简介桥接模式用于将抽象部分与它的实现部分分离,使他们可以独立的变化。这句话不是很好理解,我来简单翻译一下,大概就是将一个事物的两个维度的变化解耦开。举个例子我们来看个毛笔和蜡笔的例子,假设我们需要大中小三
桥接模式用于将抽象部分与它的设计实现部分分离,使他们可以独立的模式模式变化。这句话不是系列很好理解,我来简单翻译一下,桥接大概就是设计将一个事物的两个维度的变化解耦开。
举个例子
我们来看个毛笔和蜡笔的模式模式例子,假设我们需要大中小三种型号的系列画笔,源码库能够绘制5种不同的桥接颜色,如果使用蜡笔那么我们需要15只,设计如果使毛笔的模式模式话,我们只需要3只,系列外加5种颜料盒就OK。桥接这里的设计关键点在于,毛笔可以做到将笔的模式模式型号和颜色解耦开,使他们可以独立的系列变化,这就是云南idc服务商桥接模式。
先来看一下UML图:
再来看一下具体代码如何实现。
public interface Color { String draw(); }红颜色
public class RedColor implements Color { @Override public String draw() { return "红色"; } }定义抽象的毛笔
public abstract class BrushPen { //桥接画笔和颜色 protected Color color; public void setColor(Color color){ this.color = color; } public abstract void operation(); }定义一个小号的毛笔
public class SmallBrushPen extends BrushPen { @Override public void operation() { System.out.println(this.color.draw() + " 小号毛笔"); } }客户端这样使用桥接模式
public class BridgeBrushPenDemo { public static void main(String[] args){ BrushPen smallBrushPen = new SmallBrushPen(); //红色小号毛笔 smallBrushPen.setColor(new RedColor()); smallBrushPen.operation(); //绿色小号毛笔 smallBrushPen.setColor(new Green()); smallBrushPen.operation(); } }总结
桥接模式是结构型模式,当事物涉及多个维度的变化时,使用桥接模式可以大大降低系统复杂度,这个模式也是我认为的最难理解的一个设计模式。
源码下载很赞哦!(6)
上一篇: 数据中心电力市场的五大趋势
下一篇: 缓存雪崩和服务器雪崩应该怎么处理