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

    类图

     

    源码

    package bridge;
    
    public interface Vehicle {
        public void drive();
    }
    
    Car.java
    package bridge;
    
    public class Car implements Vehicle
    {
        @Override
        public void drive()
        {
            System.out.print("小轿车");
        }
    }
    
    Bus.java
    package bridge;
    
    public class Bus implements Vehicle{
        @Override
        public void drive()
        {
            System.out.print("公共汽车");
        }
    }
    
    Road.java
    package bridge;
    
    public abstract class Road
    {
        protected Vehicle vehicle;
    
        public Road(Vehicle vehicle)
        {
            this.vehicle = vehicle;
        }
    
        public abstract void driveOnRoad();
    }
    
    ShuiRoad.java
    package bridge;
    
    public class ShuiRoad extends Road
    {
        public ShuiRoad(Vehicle vehicle)
        {
            super(vehicle);
        }
    
        @Override
        public void driveOnRoad()
        {
            super.vehicle.drive();
            System.out.println("行驶在水泥路");
        }
    }
    
    LiRoad.java
    package bridge;
    
    public class LiRoad extends Road
    {
        public LiRoad(Vehicle vehicle)
        {
            super(vehicle);
        }
    
        @Override
        public void driveOnRoad()
        {
            super.vehicle.drive();
            System.out.println("行驶在沥青路");
        }
    }
    Tester.java
    package bridge;
    
    public class Tester {
        public static void main(String[] args) {
            Road road = new ShuiRoad(new Car());
            road.driveOnRoad();
            Road road1 = new ShuiRoad(new Bus());
            road1.driveOnRoad();
        }
    }

    测试截图

     

  • 相关阅读:
    POJ 2386 Lake Counting
    POJ 1852 Ants
    HDU 4570 Multi-bit Trie
    HDU 4611 Balls Rearrangement
    ZOJ 3551 Bloodsucker
    HEU 百题解1001 谁是中间的那个
    BNU 1001 北师大ACM新手指导/ICPC introduction(1)
    BOJ 1580 Shoot
    BOJ 1578 Maximum
    BOJ 1577 Easy Game
  • 原文地址:https://www.cnblogs.com/lx06/p/15688397.html
Copyright © 2011-2022 走看看