zoukankan      html  css  js  c++  java
  • 桥接模式

    桥接模式(Bridge),使它的抽象部分与实现部分分离,使它们都可以独立的变化。

    什么叫抽象与它的实现分离,这并不是说,让抽象类与其派生类分离,因为这没有任何意义。
    实现指抽象类与它的派生类来实现自己的对象。

    代码如下:

    1 public abstract class Implementor {
    2     public abstract void operation();
    3 }
    Implementor
     1 /**
     2  *派生类ConcreteImplementorA
     3  */
     4 public class ConcreteImplementorA extends Implementor{
     5 
     6     @Override
     7     public void operation() {
     8         System.out.println("具体实现A的执行方法");
     9         
    10     }
    11 
    12 }
    ConcreteImplementorA
    1 public class ConcreteImplementorB extends Implementor{
    2 
    3     @Override
    4     public void operation() {
    5         System.out.println("具体实现B的执行方法");
    6         
    7     }
    8 
    9 }
    ConcreteImplementorB
     1 public class Abstraction {
     2     protected Implementor implementor;
     3 
     4     public void operation(){
     5         implementor.operation();
     6     }
     7     public Implementor getImplementor() {
     8         return implementor;
     9     }
    10 
    11     public void setImplementor(Implementor implementor) {
    12         this.implementor = implementor;
    13     }
    14     
    15     
    16 }
    Abstraction
    1 public class RefineAbstraction extends Abstraction{
    2     @Override
    3     public void operation() {
    4         super.operation();
    5     }
    6 }
    RefineAbstraction
    1 public class BridgeTest {
    2     public static void main(String[] args) {
    3         Abstraction ab = new RefineAbstraction();
    4         ab.setImplementor(new ConcreteImplementorA());
    5         ab.operation();
    6         ab.setImplementor(new ConcreteImplementorB());
    7         ab.operation();
    8     }
    9 }
    test
    具体实现A的执行方法
    具体实现B的执行方法
    测试打印
  • 相关阅读:
    2018全球最强物联网公司榜单揭晓
    物联网
    kalman滤波
    自动驾驶
    CAN总线基础
    Linux系统下x86和ARM的区别有哪些?
    算法课笔记系列(七)—— 平摊分析Amortized Analysis
    深入理解Linux内存分配
    linux内核--自旋锁的理解
    DMA(直接存储器存取)
  • 原文地址:https://www.cnblogs.com/cai170221/p/13389372.html
Copyright © 2011-2022 走看看