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

    参考:http://www.cnblogs.com/java-my-life/archive/2012/05/07/2480938.html

    桥梁模式的结构

    /DesignPatterns/src/com/louis/bridge/Implementor.java

    /**
     * Project Name:DesignPatterns
     * File Name:Implementor.java
     * Package Name:com.louis.bridge
     * Date:2017年11月1日下午8:36:16
     * Copyright (c) 2017, 2692613726@qq.com All Rights Reserved.
     *
    */
    
    package com.louis.bridge;
    /**
     * ClassName:Implementor 
     * Function: TODO ADD FUNCTION. 
     * Reason:     TODO ADD REASON. 
     * Date:     2017年11月1日 下午8:36:16 
     * @author   michael
     * @version  
     * @since    JDK 1.7
     * @see      
     */
    public abstract class Implementor {
        //示例方法,实现抽象部分需要的某些具体功能
        public abstract void operationimpl();
    }

    /DesignPatterns/src/com/louis/bridge/Abstracttion.java

    /**
     * Project Name:DesignPatterns
     * File Name:Abstracttion.java
     * Package Name:com.louis.bridge
     * Date:2017年11月1日下午8:37:48
     * Copyright (c) 2017, 2692613726@qq.com All Rights Reserved.
     *
    */
    
    package com.louis.bridge;
    /**
     * ClassName:Abstracttion 
     * Function: TODO ADD FUNCTION. 
     * Reason:     TODO ADD REASON. 
     * Date:     2017年11月1日 下午8:37:48 
     * @author   michael
     * @version  
     * @since    JDK 1.7
     * @see      
     */
    public abstract class Abstracttion {
        protected Implementor impl;
        public Abstracttion(Implementor implementor){
            this.impl = implementor;
        }
        
        //示例方法
        public void operation(){
            impl.operationimpl();
        }
    }

    /DesignPatterns/src/com/louis/bridge/RefinedAbstraction.java

    /**
     * Project Name:DesignPatterns
     * File Name:RefinedAbstraction.java
     * Package Name:com.louis.bridge
     * Date:2017年11月1日下午8:40:24
     * Copyright (c) 2017, 2692613726@qq.com All Rights Reserved.
     *
    */
    
    package com.louis.bridge;
    /**
     * ClassName:RefinedAbstraction 
     * Function: TODO ADD FUNCTION. 
     * Reason:     TODO ADD REASON. 
     * Date:     2017年11月1日 下午8:40:24 
     * @author   michael
     * @version  
     * @since    JDK 1.7
     * @see      
     */
    public class RefinedAbstraction extends Abstracttion {
    
        /**
         * Creates a new instance of RefinedAbstraction.
         *
         * @param implementor
         */
        public RefinedAbstraction(Implementor implementor) {
            super(implementor);
            // TODO Auto-generated constructor stub
        }
        //其他操作方法
        public void otherOperation(){
    
        }
    }

    /DesignPatterns/src/com/louis/bridge/ConcreteImplementorA.java

    /**
     * Project Name:DesignPatterns
     * File Name:ConcreteImplementor.java
     * Package Name:com.louis.bridge
     * Date:2017年11月1日下午8:43:57
     * Copyright (c) 2017, 2692613726@qq.com All Rights Reserved.
     *
    */
    
    package com.louis.bridge;
    /**
     * ClassName:ConcreteImplementor 
     * Function: TODO ADD FUNCTION. 
     * Reason:     TODO ADD REASON. 
     * Date:     2017年11月1日 下午8:43:57 
     * @author   michael
     * @version  
     * @since    JDK 1.7
     * @see      
     */
    public class ConcreteImplementorA extends Implementor{
    
        /**
         * TODO 简单描述该方法的实现功能(可选).
         * @see com.louis.bridge.Implementor#operationimpl()
         */
        @Override
        public void operationimpl() {
            // TODO Auto-generated method stub
            
        }
        
    }

    /DesignPatterns/src/com/louis/bridge/ConcreteImplementorB.java

    /**
     * Project Name:DesignPatterns
     * File Name:ConcreteImplementor.java
     * Package Name:com.louis.bridge
     * Date:2017年11月1日下午8:43:57
     * Copyright (c) 2017, 2692613726@qq.com All Rights Reserved.
     *
    */
    
    package com.louis.bridge;
    /**
     * ClassName:ConcreteImplementor 
     * Function: TODO ADD FUNCTION. 
     * Reason:     TODO ADD REASON. 
     * Date:     2017年11月1日 下午8:43:57 
     * @author   michael
     * @version  
     * @since    JDK 1.7
     * @see      
     */
    public class ConcreteImplementorB extends Implementor{
    
        /**
         * TODO 简单描述该方法的实现功能(可选).
         * @see com.louis.bridge.Implementor#operationimpl()
         */
        @Override
        public void operationimpl() {
            // TODO Auto-generated method stub
            
        }
        
    }

    使用场景-发送消息案例

    详细参考http://www.cnblogs.com/java-my-life/archive/2012/05/07/2480938.html,讲解的非常好

    桥梁模式在Java中的使用-jdbc驱动器

    详细参考http://www.cnblogs.com/java-my-life/archive/2012/05/07/2480938.html,讲解的非常好

  • 相关阅读:
    vcs 下使用system verilog调用c函数
    modelsim+win环境下systemverilog调用c函数
    DB2锁与隔离级别
    常用JVM命令
    [转]jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)
    IntelliJ Idea 常用快捷键列表
    Pod配置PersistentVolumeClaim详解
    推荐设计模式好文
    [转载]分布式系统架构经典资料
    阿里云ECS配置iptables
  • 原文地址:https://www.cnblogs.com/Michael2397/p/7768634.html
Copyright © 2011-2022 走看看