版权声明: https://blog.csdn.net/if_i_were_a/article/details/84026907
桥接模式(Bridge),将抽象部分与他的实现部分分离,使他们都可以独立地变化
类图的来源
http://img5.imgtn.bdimg.com/it/u=1548947177,2280329040&fm=26&gp=0.jpg
public abstract class Implementor {
public abstract void operation();
}
public class ConcreteImplementorA extends Implementor {
@Override
public void operation() {
System.out.println("具体实现A的方法执行");
}
}
public class ConcreteImplementorB extends Implementor{
@Override
public void operation() {
System.out.println("具体实现B的方法执行");
}
}
public class Abstraction {
protected Implementor implementor;
public void setImplementor(Implementor implementor) {
this.implementor = implementor;
}
public void operation()
{
implementor.operation();
}
}
public class RefinedAbstraction extends Abstraction {
@Override
public void operation() {
super.operation();
}
}
public class Main {
public static void main(String[] args) {
Abstraction ab=new RefinedAbstraction();
ab.setImplementor(new ConcreteImplementorA());
ab.operation();
ab.setImplementor(new ConcreteImplementorB());
ab.operation();
}
}
桥接模式可以这样理解,实现系统可能有多种分类,每一类都有可能变化,那么就把这种多种角度分离开来让他们独立变化,减少他们之间的耦合