9.30
软件设计 石家庄铁道大学信息学院
实验9:桥接模式
本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:
1、理解桥接模式的动机,掌握该模式的结构;
2、能够利用桥接模式解决实际问题。
[实验任务一]:两个维度的桥接模式
用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。
实验要求:
1. 画出对应的类图;
2提交源代码;
// 车辆抽象类
abstract class Vehicle {
protected Road road;
public Vehicle(Road road) {
this.road = road;
}
public abstract void drive();
}
// 汽车类
class Car extends Vehicle {
public Car(Road road) {
super(road);
}
@Override
public void drive() {
System.out.print("汽车在");
road.roadSurface();
System.out.println("上行驶。");
}
}
// 公交车类
class Bus extends Vehicle {
public Bus(Road road) {
super(road);
}
@Override
public void drive() {
System.out.print("公交车在");
road.roadSurface();
System.out.println("上行驶。");
}
}
// 道路抽象类
abstract class Road {
public abstract void roadSurface();
}
// 水泥路类
class ConcreteRoad extends Road {
@Override
public void roadSurface() {
System.out.print("水泥路");
}
}
// 沥青路类
class AsphaltRoad extends Road {
@Override
public void roadSurface() {
System.out.print("沥青路");
}

浙公网安备 33010602011771号