首页 > 其他分享 >软件设计模式————(桥接模式)

软件设计模式————(桥接模式)

时间:2024-11-21 14:21:20浏览次数:1  
标签:桥接 void vehicle 模式 class 软件设计 Vehicle public Road

[实验任务一]:两个维度的桥接模式

用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。

实验要求:

1.画出对应的类图;

 

2.提交源代码;

 

public class Bus implements Vehicle
{
@Override
public void drive()
{
System.out.print("大巴");
}
}

 

public class Car implements Vehicle
{
@Override
public void drive()
{
System.out.print("小轿车");
}
}

 

public class CementRoad extends Road
{
public CementRoad(Vehicle vehicle)
{
super(vehicle);
}

@Override
public void driveOnRoad()
{
super.vehicle.drive();
System.out.println("行驶在水泥路");
}
}

 

public class main {
public static void main(String[] args) {
Road road = new CementRoad(new Car());
road.driveOnRoad();
}
}

 

public abstract class Road
{
protected Vehicle vehicle;

public Road(Vehicle vehicle)
{
this.vehicle = vehicle;
}

public abstract void driveOnRoad();
}

 

public class UnpavedRoad extends Road
{
public UnpavedRoad(Vehicle vehicle)
{
super(vehicle);
}

@Override
public void driveOnRoad()
{
super.vehicle.drive();
System.out.println("行驶在石子路");
}
}

 

public interface Vehicle {
public void drive();

}

  

3.注意编程规范。

标签:桥接,void,vehicle,模式,class,软件设计,Vehicle,public,Road
From: https://www.cnblogs.com/youxiandechilun/p/18560639

相关文章

  • 软件设计模式————(组合模式)
    [实验任务一]:组合模式用透明组合模式实现教材中的“文件夹浏览”这个例子。实验要求:1.文件的执行不需真正实现,只需简单提示即可;(类图) 2.提交源代码;publicabstractclassAbstractFile{publicabstractvoidadd(AbstractFileele);publicabstractvoidrem......
  • 软件设计模式————(装饰模式)
    [实验任务一]:手机功能的升级用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而JarPhone除了声音还能振动;更高级的手机(ComplexPhone)除了声音、振动外,还有灯光闪烁提示。实验要求:1.提交类图; 2.提交源代码;packagetest11;publi......
  • 软件设计模式————(外观模式)
    [实验任务一]:计算机开启在计算机主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法,如内存(Memory)的自检(check())、CPU的运行(run())、硬盘(HardDisk)的读取(read())、操作系统(OS)的载入(load()),如果某一过程发生错误则计算机启动失败。......
  • 软件设计模式————(抽象工厂模式)
    [实验任务一]:人与肤色使用抽象工厂模式,完成下述产品等级结构: 实验要求:1.画出对应的类图; 2.提交源代码;publicclassBlackFactoryimplementsPeopleFactory{@OverridepublicManproduceMan(){returnnewBlackMan();}@Override......
  • 软件设计模式————(建造者模式)
    [实验任务一]:计算机组装使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算机的类型可以是笔记本,也可以是台式机。实验要求:1.画出对应的类图; 2.提交源代码;Java1.BuilderpublicabstractclassBuilder{......
  • 软件设计模式————(原型模式)
    [实验任务一]:向量的原型用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆方式的异同。实验要求:1.画出对应的类图; 2.提交源代码(用C++完成);#include<iostream>usingnamespacestd;//向量类classVector{p......
  • 软件设计模式————(单例模式)
    [实验任务一]:学号的单一仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。实验要求:1.画出对应的类图; 2.提交源代码; packagetest7;publicclassClient{publicstaticvoidmain(String[]args){StudentIDstu1,stu2;stu1=StudentID.getStudent......
  • 软件设计模式————(适配器模式)
    [实验任务一]:双向适配器实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。实验要求:1.画出对应的类图; 2.提交源代码;packagetest8;publicclassAdapterimplementsCat,Dog{privateCatcat=newRealcat();privateDogdog=newRealdog();publicv......
  • 软件设计模式————(工厂方法模式)
    [实验任务一]:加密算法目前常用的加密算法有DES(DataEncryptionStandard)和IDEA(InternationalDataEncryptionAlgorithm)国际数据加密算法等,请用工厂方法实现加密算法系统。实验要求:1.画出对应的类图; 2.提交该系统的代码,该系统务必是一个可以能够直接使用的系统,查阅资料完......
  • Java中常用的线程安全单例模式实现
    在Java中,实现线程安全的单例模式有多种方式。以下是几种常用的线程安全单例模式实现:1.饿汉式(线程安全,类加载时初始化)特点:简单且线程安全,但如果实例过于占用资源且程序可能不使用它,会造成内存浪费。publicclassSingleton{privatestaticfinalSingletonINSTANCE......