简介
桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化
将抽象化与实现化解耦,使得二者可以独立变化
下面我们使用连接数据库的方式来简单介绍一下,在不修改源码的情况下引用不用的数据库
例子
两类数据库
//数据库操作接口
public interface DataBaseOperation {
//这里假设只有一个接口
void doExecute();
}
public class MySqlDB implements DataBaseOperation {
@Override
public void doExecute() {
System.out.println("MySqlDB....");
}
}
public class MySqlDB implements DataBaseOperation {
@Override
public void doExecute() {
System.out.println("MySqlDB....");
}
}
桥
//做一个桥的作用
public class Bridge implements DataBaseOperation {
private DataBaseOperation source;
public void setSource(DataBaseOperation source) {
this.source = source;
}
@Override
public void doExecute() {
source.doExecute();
}
}
测试
public class Main {
public static void main(String[] args) {
//创建一个桥
Bridge bridge = new Bridge();
//设置数据源为MySqlDB
bridge.setSource(new MySqlDB());
//执行
bridge.doExecute();
System.out.println("=====================================");
//设置数据源为PgDB
bridge.setSource(new PgDB());
//执行
bridge.doExecute();
//只要选择不同的数据源,完成数据库的基本操作
// MySqlDB....
//=====================================
// PgDB....
}
}