对设计模式—Bridge模式的认识
Bridge将抽象和行为划分开来,各自独立,可以动态结合变换.
随着社会的发展,交通要求便利,汽车成为交通的主要工具,有车可以加汽油,也可以加柴油.
public abstract class Car{ public CarImp carImp; public abstract void buyOil(); public CarImp getCarImp() { return carImp; } public void setCarImp() { this.carImp = SingletonCarImp.getInstance(); }}public interface CarImp{ public void appendOil();}public class Truck extends Car{ public Truck() { setCarImp(); } public void buyOil() { carImp.appendOil(); }}public class SaloonCar extends Car{ public SaloonCar() { setCarImp(); } public void buyOil() { carImp.appendOil(); }}public class GasCarImp implements CarImp{ public void appendOil() { System.out.println("Append gasoline for salooncar"); }}public class DieselOilCarImp implements CarImp{ public void appendOil() { System.out.println("Append diesel oil for truck"); }}public class SingletonCarImp{ private static CarImp carImp; public SingletonCarImp(CarImp carImp) { this.carImp = carImp; } public static CarImp getInstance() { return carImp; }}public class TestBridge{ public static void main(String[] args) { SingletonCarImp singleton = new SingletonCarImp(new DieselOilCarImp()); Car truck = new Truck(); truck.buyOil(); Car saloonCar = new SaloonCar(); saloonCar.buyOil(); }}