设计模式-结构型模式-桥接模式

桥接模式

桥接模式即将抽象部分与它的实现部分分离开来,使他们都可以独立变化。

桥接模式将继承关系转化成关联关系,它降低了类与类之间的耦合度,减少了系统中类的数量,也减少了代码量。

如果一个系统需要在构件的抽象化角色和具体化角色之间增加灵活性。实现化的角色不影响客户端,一个构件有多于一个抽象化角色和实现化角色,系统需要它们进行动态耦合。提高了比继承更好的办法。

//大中小不同类型不同颜色笔
abstract class Pen{
  protected Color c;
  public abstract void Paint();
  public void SetColor(Color c){
    this.c = c;
  }
}
class BigPen extends Pen{
  @Override
  public void Paint(){
    System.out.println("bigpenpaint"+c.color)
  }
}
class Color{
  public String color;
}
class Blue extends Color{
  public Blue{
    this.color = "blue";
  }
}

JDBC 源码里:

MySQL 的 Connection 接口实现的是 java.sql.Connection 接口,同时 Oracle 数据库也一样可以实现 java.sql.Connection 接口,他们向下都可以有更多的实现子类。

然后 DriverManager 相当于桥接模块,依赖和聚合 java.sql.Connection 接口,供客户端调用。

posted @ 2021-02-01 16:48  rd-yyx  阅读(42)  评论(0)    收藏  举报