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,讲解的非常好

  • 相关阅读:
    《乘法运算定律》
    pytest(三十九)--内置request读取项目的根目录 rootdir
    《乘除法意义及各部分关系》
    《比例尺》
    《百分数》
    《8的乘法口诀》
    《1升有多少》
    ant-design-vue 上传图片组件
    ant-design-vue快速搭建
    js实现无缝滚动
  • 原文地址:https://www.cnblogs.com/Michael2397/p/7768634.html
Copyright © 2011-2022 走看看