package com.maom.design.D_15_Bridge;
/**
* @Title: D_15_Bridge
* @Description: 15_桥接模式
* @Author maohb
* @Version 1.0
*/
public class D_15_Bridge {
public static void main(String[] args) {
Engine engine150 = new Engine150();
Engine engine200 = new Engine200();
Car bus1 = new Bus(engine150);
bus1.installEngine();
Car bus2 = new Bus(engine200);
bus2.installEngine();
Car jeep1 = new Jeep(engine150);
jeep1.installEngine();
Car jeep2 = new Jeep(engine200);
jeep2.installEngine();
}
}
interface Engine {
public void installEngine();
}
class Engine150 implements Engine {
public void installEngine() {
System.out.println("安装 150cc 发动机");
}
}
class Engine200 implements Engine {
public void installEngine() {
System.out.println("安装 200cc 发动机");
}
}
abstract class Car {
private Engine engine;
public Car(Engine engine) {
this.engine = engine;
}
public Engine getEngine() {
return engine;
}
public void setEngine(Engine engine) {
this.engine = engine;
}
public abstract void installEngine();
}
class Bus extends Car{
public Bus(Engine engine) {
super(engine);
}
public void installEngine() {
System.out.print("Bus:");
this.getEngine().installEngine();
}
}
class Jeep extends Car {
public Jeep(Engine engine) {
super(engine);
}
public void installEngine() {
System.out.print("Jeep:");
this.getEngine().installEngine();
}
}
设计模式笔记_15_桥接模式
最新推荐文章于 2024-10-08 09:30:25 发布