java编程模式:桥接模式(BridgePatter)计算机等级考试
文章作者 100test 发表时间 2010:01:01 12:31:26
来源 100Test.Com百考试题网
引例:
就拿汽车在路上行驶来说。有小汽车,有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶,这时你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境也在变化,在软件系统中就要适应这两个方面的变化,怎么才应付这种变化呢?
概述:
在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的,那么如何应对这种“多维度的变化”?就要利用面向对象的技术来使得类型能够沿着多个方向进行,但又不引入额外的复杂度?这就要用到Bridge模式。
意图:
将抽象部分与实现部分分离,使得它们都可以独立的变化---------------GOF
结构图:
{ {
pubilc void run(){System.out.println("在路上").}
}
public class SpeedWay extends Road
{
public void run(){System.out.println("高速公路").}
}
//市区街道
public class Street extends Road
{
public void run(){System.out.println("市区街道").}
}
public class CarOnSpeedWay extends SpeedWay
{
public void run(){System.out.println("小汽车在调整公路上行驶").}
}
public class BusOnSpeedWay extends SpeedWay
{
public void run(){System.out.println("公共汽车在高速公路上行驶").}
}
public class CarOnStreet extends Street{
public void run(){System.out.println("汽车在街道上行驶").}
}