设计模式之结构型-桥接模式(10)

来源:互联网 发布:手风琴特效js 编辑:程序博客网 时间:2024/05/16 09:43

今天给大家介绍桥接模式
桥接模式定义:将抽象部分与它的实现部分分离,使他们可以独立变化。
下面是桥接模式的类图:
这里写图片描述
下面我们用代码实现

public interface Sourceable {    void method();}
public class Sourceable1 implements  Sourceable{    @Override    public void method() {       System.out.print("这是Sourceable1的方法method");    }}
public class Sourceable2 implements  Sourceable{    @Override    public void method() {       System.out.print("这是Sourceable2的方法method");    }}public    class Bridge {    private  Sourceable sourceable;    public void  setSourceable(Sourceable sourceable){        this.sourceable=sourceable;    }    public Sourceable getSourceable(){        return sourceable;    }    public  void  method(){        if (sourceable!=null){            sourceable.method();        }    }}

测试类:

public class Test  {    public static void main(String[] args) {        Bridge bridge=new Bridge();        bridge.setSourceable(new Sourceable1());        bridge.method();        bridge.setSourceable(new Sourceable2());        bridge.method();    }}

结果打印:
这是Sourceable1的方法method
这是Sourceable2的方法method

桥接模式优点:提高系统的可拓展性,分离了抽象接口,
缺点:难以理解
java中常用的桥接当属jdbc了,jdbc提供统一的接口,各个数据库厂商自己实现相关功能,提高拓展性