首页 > 其他 > 详细

BridgePattern(桥接模式)

时间:2016-12-28 12:32:33      阅读:254      评论:0      收藏:0      [点我收藏+]
/**
 * 桥接模式
 * @author TMAC-J
 * 应用于多维度方案
 * 用组合的形式代替继承
 * 符合单一职责原则
 * 一个类只有一个引起他变化的原因
 * 增加程序灵活性
 */
public class BridgePattern {
    
    abstract class Road{
        Car car;
        void run(){};
    }
    
    abstract class Car{
        void showMyName(){};
    }
    
    public class Street extends Road{
        public void run(){
            car.showMyName();
            System.out.println("在街道上上奔驰");
        }
    }
    
    public class SpeedRoad extends Road{
        public void run(){
            car.showMyName();
            System.out.println("在高速路上奔驰");
        }
    }
    
    public class Bus extends Car{
        public void showMyName(){
            System.out.println("公交车");
        }
    }
    
    public class SedanCar extends Car{
        public void showMyName(){
            System.out.println("轿车");
        }
    } 
    
    public void test(){
        Street street = new Street();
        street.car = new Bus();
        street.run();//输出结果为公交车在街道上奔驰
        SpeedRoad speedRoad = new SpeedRoad();
        speedRoad.car = new SedanCar();
        speedRoad.run();//输出结果为轿车在高速路上奔驰
    }
    
}

 

BridgePattern(桥接模式)

原文:http://www.cnblogs.com/yzjT-mac/p/6228637.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!