zoukankan      html  css  js  c++  java
  • 桥接模式(Bridge Pattern)

    桥接模式,用于将抽象化与实现化解偶,使得二者可以独立变化。

    举一个数据库JDBC的例子:

    定义一个Driver接口,不同的数据库实现的接口,如MySQL,SQLServer

    public interface Driver {
        public void connect();
    }

    MySQL具体类:

    public class MySQL implements Driver {
        public void connect() {
            System.out.println("connect to MySQL");
        }
    }

    SQLServer具体类:

    public class SQLServer implements Driver {
        public void connect() {
            System.out.println("connect to SQLServer");
        }
    }

    一个桥接类:

    public class DriverManager {
        Driver driver;
        public setDriver(Driver d) {
            driver = d;
        }
      
    public connect() { driver.connect(); } }

    测试代码:

    DriverManager dm = new DriverManager();
    Driver mysqldriver = new MySQL();
    dm.setDriver(driver);
    dm.connect();

    Driver sqlserverdriver = new SQLServer();
    dm.setDriver(driver);
    dm.connect();

    利用DriverManager作为桥接类,将不同数据库的具体实现与客户实现解耦,使得二者可以独立变化,客户实现的时候才决定使用哪个数据库,而且打算更换数据库时只需要修改代码中选择数据库的部分,数据库的厂商可以自行设计数据库的具体实现,只需要保证实现Driver接口,且对DriverManager可见的接口一致即可。

  • 相关阅读:
    目标跟踪_POI算法
    深度学习-Maxpool
    HOG特征
    R CNN
    颜色空间
    数值分析-非线性方程的数值解法
    数值分析-一些小小的知识点
    数值分析-求微分
    多元统计分析-因子分析
    最优化-可行方向法
  • 原文地址:https://www.cnblogs.com/13jhzeng/p/5522730.html
Copyright © 2011-2022 走看看