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

实验9:桥接模式

时间:2024-11-04 09:09:18浏览次数:2  
标签:java 桥接 void vehicle 模式 test9 实验 Vehicle public

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

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

 

1.类图 

 

 

1. 源代码

1.Car.java

package test9;

 

public class Car implements Vehicle{

    @Override

    public void drive() {

        System.out.println("小轿车行驶在");

    }

}

 

2.CementRoad.java

package test9;

 

public class CementRoad extends Road{

 

    public CementRoad(Vehicle vehicle) {

        super(vehicle);

    }

 

    @Override

    public void driveOnRoad() {

        super.vehicle.drive();

        System.out.println("水泥路");

    }

}

 

3.Client.java

package test9;

 

public class Client {

    public static void main(String[] args) {

        Road road = new AsphaltRoad(new Car());

        road.driveOnRoad();

        System.out.println("**************************************************");

        Road road1 = new CementRoad(new Bus());

        road1.driveOnRoad();

    }

}

 

 

4.Road.java

package test9;

 

public abstract class Road {

    protected Vehicle vehicle;

    public Road(Vehicle vehicle){

        this.vehicle = vehicle;

    }

    public abstract void driveOnRoad();

}

 

 

5.Vehicle.java

package test9;

 

public interface Vehicle {

    public void drive();

}

 

6.AsphaltRoad.java

package test9;

 

public class AsphaltRoad extends Road{

    public AsphaltRoad(Vehicle vehicle) {

        super(vehicle);

    }

 

    @Override

    public void driveOnRoad() {

        super.vehicle.drive();

        System.out.println("沥青路");

    }

}

 

 

7.Bus.java

package test9;

 

public class Bus implements Vehicle{

 

    @Override

    public void drive() {

        System.out.println("公交车行驶在");

    }

}

 

标签:java,桥接,void,vehicle,模式,test9,实验,Vehicle,public
From: https://www.cnblogs.com/po3a/p/18524421

相关文章

  • 20222425 2024-2025-1 《网络与系统安全技术》实验四报告
    202224252024-2025-1《网络与系统安全技术》实验四报告目录1.实践内容2.实践过程2.1恶意代码样本的文件类型识别,脱壳与字符串提取2.1.1使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具2.1.2使用脱壳软件,对rada恶意代码样本进行脱壳处理......
  • 08.装饰者模式设计思想
    08.装饰者模式设计思想目录介绍01.装饰者模式基础1.1装饰者模式由来1.2装饰者模式定义1.3装饰者模式场景1.4装饰者模式思考02.装饰者模式实现2.1罗列一个场景2.2装饰者结构2.3装饰者基本实现03.装饰者实例演示3.1需求分析3.2案例基础实现3.3演变......
  • 微服务设计模式:节流模式(Throttling Pattern)
    微服务设计模式:节流模式(ThrottlingPattern)定义节流模式(ThrottlingPattern)是一种控制资源使用速率的设计模式,广泛应用于云计算和微服务架构中,以防止服务过载和资源耗尽。它通过限制客户端请求的数量,保证系统稳定性和可用性。结构节流模式的核心组件包括:请求过滤器:拦......
  • 数据科学实验三 死亡原因分析
    一、实验目标和要求对墨西哥的个体死亡记录和死亡原因数据进行分析,掌握数据处理的三类主要工具:数据操作、数据可视化、数据建模。二、实验环境百度飞桨三、实验内容¶1)数据操作:读入数据文件deaths.xlsx和icd-main.xlsx,对数据进行筛选、去空值、分组统计等操作,计算出每......
  • 2024-11-03:得到更多分数的最少关卡数目。用go语言,Alice 和 Bob 正在进行一个有 n 个关
    2024-11-03:得到更多分数的最少关卡数目。用go语言,Alice和Bob正在进行一个有n个关卡的游戏,其中每个关卡要么是困难模式(possible[i]==0),要么是简单模式(possible[i]==1)。玩家在游戏中获得分数的规则如下:通过简单模式的关卡可得1分,而遇到困难模式的关卡将扣除1分。Alice从......
  • Sigrity Power SI 3D-EM Full Wave Extraction模式如何进行S参数提取和观测3D电磁场和
    SigrityPowerSI3D-EMFullWaveExtraction模式如何进行S参数提取和观测3D电磁场和远场操作指导(三)-去嵌SigrityPowerSI3D-EMFullWaveExtraction模式如何进行S参数提取和观测3D电磁场和远场操作指导(三)-去嵌  SigrityPowerSI如何使用3D-EMFullWaveExtracti......
  • Go语言中的并发模式
    Go语言中的并发模式原创 Go 源自开发者  2024年11月01日23:47 广东 听全文源自开发者专注于提供关于Go语言的实用教程、案例分析、最新趋势,以及云原生技术的深度解析和实践经验分享。373篇原创内容公众号Go语言以其并发性和轻量级的goroutine而闻......