本文共 1565 字,大约阅读时间需要 5 分钟。
将抽象部分与实现部分分离,使他们都可以独立地变化。
举例:
实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让他们独立变化,减少耦合。
类比
Implementor类
package designmode.brige;public abstract class Implementor { public abstract void Opration();}
具体实现类A 和具体实现类B等派生类
package designmode.brige;public class ConcreteImplementorA extends Implementor{ @Override public void Opration() { System.out.println("具体实现A的方法执行"); }}
package designmode.brige;public class ConcreteImplementorB extends Implementor{ @Override public void Opration() { System.out.println("具体实现B的方法执行"); }}
Abstraction类
package designmode.brige;public class Abstraction { protected Implementor implementor; public void setImplementor(Implementor implementor) { this.implementor = implementor; } public void Operation(){ implementor.Opration(); }}
RefinedAbstraction类
package designmode.brige;public class RefinedAbstraction extends Abstraction{ @Override public void Operation() { implementor.Opration(); }}
客户端实现
package designmode.brige;public class Client { public static void main(String[] args) { Abstraction ab=new RefinedAbstraction(); ab.setImplementor(new ConcreteImplementorA()); ab.Operation(); ab.setImplementor(new ConcreteImplementorB()); ab.Operation(); }}
转载地址:http://wxfdi.baihongyu.com/