首页 > 其他分享 >11.09实验9:桥接模式

11.09实验9:桥接模式

时间:2025-01-07 23:55:02浏览次数:1  
标签:11.09 桥接 void Road 实验 transport new public Transport

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解桥接模式的动机,掌握该模式的结构; 2、能够利用桥接模式解决实际问题。   [实验任务一]:两个维度的桥接模式 用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 实验要求: 1. 画出对应的类图;   2. 提交源代码; package a9; public abstract class Road { protected Transport transport; public void setTransport(Transport tr) { this.transport=tr; } public abstract void drive(); } package a9; public class Liqing extends Road{ public void drive() { transport.run(); System.out.println("行驶在沥青路"); } } package a9; public class Shuini extends Road{ public void drive() { transport.run(); System.out.println("行驶在水泥路"); } } package a9; public interface Transport { public void run(); } package a9; public class Bus implements Transport{ @Override public void run() { System.out.print("Bus"); } } package a9; public class Car implements Transport{ @Override public void run() { System.out.print("Car"); } } package a9; import java.util.*; public class Client { public static void main(String[] args) { Transport transport = null; Road road = null; System.out.println("请选择:1、Car/水泥路 2、Car/沥青路 3、Bus/水泥路 4、Bus/沥青路"); Scanner input=new Scanner(System.in); int i=input.nextInt(); if(i==1) { transport=(Transport)new Car(); road=(Road)new Shuini(); }else if(i==2) { transport=(Transport)new Car(); road=(Road)new Liqing(); }else if(i==3){ transport=(Transport)new Bus(); road=(Road)new Shuini(); }else if(i==4) { transport=(Transport)new Bus(); road=(Road)new Liqing(); }else { System.out.println("输入无效!"); } road.setTransport(transport); road.drive(); } } 3.注意编程规范。

标签:11.09,桥接,void,Road,实验,transport,new,public,Transport
From: https://www.cnblogs.com/kongxiangzeng/p/18658692

相关文章

  • 11.10实验10:组合模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、理解组合模式的动机,掌握该模式的结构;2、能够利用组合模式解决实际问题。 [实验任务一]:组合模式用透明组合模式实现教材中的“文件夹浏览”这个例子。实验要求:1.文件的执行不需真正实现,只需简单提示即可; 2.提......
  • 11.1实验3:工厂方法模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解工厂方法模式的动机,掌握该模式的结构; 2、能够利用工厂方法模式解决实际问题。[实验任务一]:加密算法 目前常用的加密算法有DES(DataEncryptionStandard)和IDEA(InternationalDataEncryptionAlgorithm)国际......
  • 11.02实验4:抽象工厂模式
    本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解抽象工厂模式的动机,掌握该模式的结构; 2、能够利用抽象工厂模式解决实际问题。[实验任务一]:人与肤色 使用抽象工厂模式,完成下述产品等级结构: 实验要求: 1.画出对应的类图; 2.提交源代码;Black.j......
  • Ensp基础实验---同网段PC以及网关之间的通信
        通过安装ENSP,可以模拟搭建网络仿真环境,初步了解ENSP之后,可以进行一些简单的网络拓扑搭建,通过对相关设备的配置,实现网络畅通的目的    此次模拟的是同一个网段内,两台PC之间的通信情况,同时选用路由器的一个指定接口,用作整个网络网段的网关,检验PC与网关之间的......
  • 9.26实验1:UML与面向对象程序设计原则
    [实验任务一]:UML复习阅读教材第一章复习UML,回答下述问题:面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。1、关联关系   2、聚合关系   3、依赖关系   4、组合关系   [实验任务二]:单一职责原则 登录模块在实际项目开发中很常见,请......
  • IPSEC实验汇总
    IPSEC实验汇总1.IKE主模式及预共享秘钥认证配置举例1.1配置参考如下:设备组网:A---B设备A设备B sysnameA sysnameB##interfaceLoopBack0interfaceLoopBack0 ipaddress2.1.1.1255.255.255.255 ipaddress3.1.1.1255.255.255.255##inte......
  • (免费送源码)计算机毕业设计原创定制:python+Django+MySQL Django实验室管理系统
    摘 要本论文主要论述了如何使用python语言、Django框架开发一个实验室管理系统,本系统将严格按照软件开发流程,进行各个阶段的工作,面向对象编程思想进行项目开发。在引言中,作者将论述该系统的当前背景以及系统开发的目的,后续章节将严格按照软件开发流程,对系统进行各个阶段分析......
  • ensp实验:网络地址转换配置实验NAT:(一)
    一、实验介绍网络地址转换NAT(NetworkAddressTranslation)是将IP数据报文中头的IP地址转换为另一个IP地址的过程。作为缓解IP地址枯竭的一种过渡方案,NAT通过地址重用的方法来满足IP地址的需要,可以在一定程度上缓解IP地址空间枯竭的压力。NAT除了解决IP地址短......
  • ensp实验:本地AAA配置
    一、实验拓扑本地AAA配置的实验拓扑如下图所示(1)配置R1,命令如下:<Huawei>system-view//进入系统视图[Huawei]undoinfo-centerenable//关闭路由器输出信息[Huawei]sysnameR1//修改设备名为R1[R1]interfaceg0/0/0//进入接口g0/0/0[R1-GigabitEthernet0/0/0]ip......
  • HTTPS 抓包实验
    1.HTTP的缺点在正式介绍HTTPS前我们先来看看HTTP协议当前存在的三大缺点:机密性问题:通信使用了明文,第三方可以拦截并获悉通信内容;完整性问题:未验证报文的完整性,第三方可以篡改通信内容;认证问题:未验证对方的身份,第三方可以冒充他人身份参与通信。注:其他未加密协议也会存......