论坛首页 Java企业应用论坛

设计模式之 - Bridge模式

浏览 11161 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (6)
作者 正文
   发表时间:2011-06-20   最后修改:2011-06-23

 Bridge 模式是模式里面最难理解同时也是功能非常强大的一个模式, 下面我们就来谈一谈它的核心思想适用场合欢迎有兴趣的同行一起探讨补充。

 

设计模式一书中原话描述这一模式: 将抽象与其实现解耦,使它们可以独立的适应变化。

 

Bridge 模式要解决的问题是: 当一个抽象有不同实现的时候,它可以使抽象和实现相互独立的进行变化。

 

适用场合: 对业务逻辑进行分析找到变化的部分放在各自的抽象类中,在分析这些抽象类之间的关系,使其能够做到相互独立的类中包含变化,从而使未来发生变化的部分很小程度的或者不影响当前的代码。

 

简单理解该模式由一个抽象(包括其派生类)和一个实现组成。

 

 

看一个具体一点的例子:

 

比如说常见的画图实现

 

 

 

 

public abstract class Shape {
	
	protected AbstractDrawing myDrawing;
	
	abstract public void draw();
	
	Shape(AbstractDrawing drawing)
	{
		this.myDrawing = drawing;
	}
	
	protected void drawLine(double x1, double y1, double x2, double y2)
	{
		myDrawing.drawLine(x1, y1, x2, y2);
	}
	
	protected void drawCircle(double x, double y, double r)
	{
		myDrawing.drawCircle(x, y, r);
	}

}

 

public abstract class AbstractDrawing {
	abstract public void drawLine(double x1, double y1, double x2, double y2);
	abstract public void drawCircle(double x, double y, double r);
}

 

 

 

  • 大小: 6.7 KB
  • 大小: 52.6 KB
   发表时间:2011-06-22  
图全挂了。··
0 请登录后投票
   发表时间:2011-06-22  
seagod.wong 写道
图全挂了。··

不会吧,看不到图吗?我自己看都能看到的啊。
0 请登录后投票
   发表时间:2011-06-22  
是看不到图
0 请登录后投票
   发表时间:2011-06-22  
这是传说的桥接吗
0 请登录后投票
   发表时间:2011-06-22  
LZ头像没挂
0 请登录后投票
   发表时间:2011-06-22  
楼主发完贴就拆桥了。
不过我觉得抽象工厂比桥模式更难理解。
0 请登录后投票
   发表时间:2011-06-23  
呵呵,看不到图,楼主的桥 不合格呀
0 请登录后投票
   发表时间:2011-06-23  
确实看不到图,不过应该不是很难理解吧
0 请登录后投票
   发表时间:2011-06-23  
说实话,楼主讲的不是很清楚,应该有一大部分人看不太明白

桥接最大的好处是可以防止类膨胀的,并且能更好的复用,增加后期的可维护性。。。。

这些楼主没表达出来
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics