——————第2天———————————————————装饰器模式包括哪些核心角色? 1. Component接口在上面的示例中,Component接口等效于car接口,并且所有包装类和包装类都从该接口继承。 2. ConcreteComponent类ConcreteComponent类是一个打包的实现类。
在示例中,梅赛德斯·奔驰,宝马和特斯拉都属于这个角色。 3.  Decorator抽象类的所有包装类都从Decorator抽象类继承,并且Decorator类实现Component接口。
这样做是为了实现多层嵌套包装。 4. ConcreteDecorator类是一个特定的包装类,用于扩展包装类的功能,例如示例中的自动驾驶功能和飞行功能扩展。
这四个核心角色之间有什么关系?我们可以使用装饰器模式的UML类图来表达:第一个是car接口,它是Component的角色,它定义了run的行为:public interface Car {void run();}接下来是实现类别的各种汽车,即ConcreteComponent的角色,不同的汽车具有不同的运行行为实现:公共类BenzCar实现Car {@Override public void run(){& nbsp;& nbsp;& nbsp ;& nbsp;& nbsp;& nbsp; System.out .println(“奔驰在开车!”);& nbsp;& nbsp;& nbsp;& nbsp;} }公共类BmwCar实现Car {@Override public void run(){& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp; System.out .println(“ BMW正在行驶!”);& nbsp;& nbsp;& nbsp;& nbsp;}}公共类TeslaCar实现Car {@Override public void run(){& nbsp;& ;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp; System.out.pri ntln(“特斯拉在开车!”); & nbsp;& nbsp;& nbsp;}}下面是装饰器的抽象类,它是Decorator角色,其中包含Decorated成员对象:公共类CarDecorator实现Car {protected Car&decoratedCar; public CarDecorator(Car& nbsp; decoratedCar){this.decoratedCar& nbsp; =& nbsp;& nbsp;& nbsp;& nbsp;} public void run(){& nbsp; & nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp; decoratedCar.run();& nbsp;& nbsp;& nbsp;& nbsp; }}有人可能会奇怪为什么装饰器类也实现了Car接口?这是装饰器模式的灵活性。继承自Car接口的每个装饰器本身也可以由一个更外部的装饰器包装。
包装方法是将Car对象作为参数传递给外部装饰器的构造函数。接下来是混凝土装饰器实现类,它是ConcreteDecorator角色。
这些装饰器还实现了运行行为。一方面,他们将调用包装对象的run方法,另一方面,他们将执行一些扩展的操作(例如自动驾驶和飞行):公共类AutoCarDecorator扩展CarDecorator {public AutoCarDecorator(Car& decoratedCar) {super(decoratedCar);& nbsp;& nbsp;& nbsp;} @Override public void run(){& nbsp;& nbsp;& nbsp;& nbsp;& nbsp ;& nbsp;& nbsp; decoratedCar.run();& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp ; autoRun();& nbsp;& nbsp;& nbsp;} private void autoRun(){& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& n;  & nbsp; System.out。
println(“ Enable Autopilot”); & nbsp;& nbsp; }}公共类FlyCarDecorator扩展了CarDecorator {public FlyCarDecorator(Car& nbsp; decoratedCar){super(decoratedCar);& } @Override public void run(){& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp ;& decoratedCar.run();& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp; fly();& nbsp ;& nbsp;& nbsp;} private void fly(){& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& n; System.out.println(“打开飞行汽车模式”); }}最后,我们的客户端类。客户端类负责创建打包的对象和修饰符,并决定如何打包和执行:public class Client {public static void main(String []& nbsp; args){& nbsp;& nbsp;&  & nbsp;   汽车  benzCar  = new BenzCar();& nbsp;& nbsp;& nbsp;& n nbsp;& nbsp;& nbsp;& nbsp; = new BmwCar();& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;& nbsp;  & nbsp;& nbsp;汽车  teslaCar& nbs
公司: 深圳市捷比信实业有限公司
电话: 0755-29796190
邮箱: ys@jepsun.com
产品经理: 汤经理
QQ: 2057469664
地址: 深圳市宝安区翻身路富源大厦1栋7楼

更多资讯
获取最新公司新闻和行业资料。
- 积层式电感是什么? 积层式电感是一种由多层金属片和绝缘层叠加而成的电感器。它的结构类似于印刷电路板,可以通过将多层金属片和绝缘层叠加在一起,并通过蚀刻和电镀等工艺形成具有特定电感值和电阻值的电感器。积层式电感具有高Q值、小...
- 保险丝的储存方式是什么? 为了获得保险丝的最佳性能,储存保险丝时应该注意以下几点:保险丝应该储存在干燥、通风、无腐蚀性气体的环境中,避免阳光直射和高温环境。保险丝应该放置在专门的保险丝盒或者保险丝架中,避免受到外力的冲击和碰撞...
- 老式闸刀保险丝是什么金属材质 老式闸刀保险丝,使用的主要成分是铅,并含有少量其他金属。合金具有低熔点和高电阻率的特点,而大多数保险丝由铅(不低于98%)和锑(0.3-1.5%)合金制成。熔点为246,电阻率远高于导体。因此,当电路过流和短路时,保险丝...
- 滤波器共模电感大还是串模电感大 共模滤波器原理共模电感也称为共模滤波器。它是一种以铁氧体为核心的共模干扰抑制器件。它由两个大小相同、匝数相同的线圈对称缠绕在同一个铁氧体环形磁铁上组成。在磁芯上形成四端器件,对共模信号的大电感有抑制作...
- 共模电感怎么接线与差模电感的区别 共模电感和差模电感的区别共模电感和差模电感的电路图 1、骚扰电磁场在线-线之间产生差模电流,在负载上引起干扰,这就是差模干扰;骚扰电磁场在线-地之间产生共模电流,共模电流在负载上产生差模电压,引起干...
- 怎么区分共模电感和差模电感 共模电感和差模电感都是抗电磁干扰的有效元件,广泛应用于各种滤波器、开关电源等产品中。然而,共模电感器用于抑制共模干扰,而差模电感器用于抑制差模干扰。两者都是重要的滤波电感。这两种电感器都是滤波电感器,...
- 差模电感和共模电感怎么选择 一、共模电感与差模电感共模电感和差模电感都是抗电磁干扰有效的元器件之一,广泛应用于各种滤波器、开关电源等产品,但是共模电感是用来抑制共模干扰,而差模电感是用来抑制差模干扰,两种都是比较重要的滤波电感。...
- 模拟位-称重传感器的模拟组合器电路 本文利用了上一篇文章未简化的称重传感器SPICE模型的多个实例。它为多称重传感器系统提供了一个模拟前端电路,在该系统中,所有称重传感器的输出必须进行组合和放大,并且可用于单轨和双轨应用。给出的示例将是四个称重...
- 什么是发光二极管封装 发光二极管封装是指发光芯片的封装,与集成电路封装有很大不同。发光二极管封装不仅需要保护灯芯,还需要能够透光。因此,发光二极管封装对封装材料有特殊要求。...
- 铝壳电阻器的主要特点是什么?和普通电阻器有什么区别? 铝壳电阻器的主要物理特征是将电能转化为热能,可以说是电流通过时产生内部能量的耗能部件。外壳由铝合金制成(金色铝壳),表面有散热槽,体积小、功率大、耐高温,过载能力强,耐候性强,精度高,标准低感应电阻,...
- 电容式压力传感器属于什么型 电容式压力传感器(capacitive type pressure transducer),是一种利用电容敏感元件将被测压力转换成与之成一定关系的电量输出的压力传感器。特点是,输入能量低,高动态响应,自然效应小,环境适应性好。原理它一般采用圆形金属...
- 共模和差模电感的区别 1.用于抗电磁干扰的两种电感器:共模电感器和差模电感器。2.干扰电磁场在线路之间产生差模电流,对负载造成干扰,称为差模干扰;干扰电磁场在线路和地面之间产生共模电流,共模电流在负载上产生差模电压,造成干扰,即...
- 共模电感的差模分量一般都远小于共模电感量 看点1 几个简单的实例测验与分析!01 这是一个共模电感,如下测量,你觉得测得的电感量是多少?可能有一部分会答错。下面来说明一下我们知道共模电感的绕法有两种,1 双线并绕,2 两组线圈分开绕。我们知道共模电感的绕...
- 共模差模电感 共模电感与差模电感区别共模电感简介共模电感又称共模扼流圈,通常用于滤波计算机开关电源中共模的电磁干扰信号,在电路板设计中,共模电感器也用作EMI滤波器,用于抑制由向外发射高速信号产生的电磁辐射。共模电感是...
- 滤波器 差模电感 共模电感 在前面 看点1 几个简单的实例测验与分析!01 这是一个共模电感,如下测量,你觉得测得的电感量是多少?可能有一部分会答错。下面来说明一下我们知道共模电感的绕法有两种,1 双线并绕,2 两组线圈分开绕。我们知道共模电感的绕...
- 共模电感的差模分量一般都远小于 之前我们为大家介绍了近年来强势崛起的国产共模电感,在新闻发布提后,有小伙伴给我们留言咨询问:共模滤波电感的电感量在选取时是越大越好吗?小编询问了专业技术人员,回答是:其实共模滤波电感器不是电感量越大越...
- 共模和差模电感可以集成在一块吗 看到有家厂商,共模电感看似和普通的共模电感相似,可是却包含了差模电感,觉得奇怪,请教共模电感和差模电感二合一,如何实现啊 本实用新型涉及一种集成差模的共模电感器及电源,包括一体成型的外框,以及...
- 艺控遥控墙壁开关外壳模具的设计与制造 艺控遥控墙壁开关的外壳模具是一种专门用于制造墙壁开关塑料外壳的工具。这种模具的设计和制作需要考虑到开关的实际使用环境、尺寸精度以及外观美观度等多个因素。为了确保生产出的墙壁开关具有良好的耐用性和触感,...
- 点火电源保险丝一装上去就爆了是什么原因 一、常见的故障现象1、发动机运转平稳性差、有爆燃、易过热的现象。2、发动机起动时有反转、怠速和急加速时有爆燃则为点火过早。3、发动机发闷无力,易过热,排气管冒黑烟,放炮则为点火过晚。二、故障原因排除及诊断...
- 电源滤波器 共模电感 差模电感 多大 一、共模电感与差模电感共模电感和差模电感都是抗电磁干扰有效的元器件之一,广泛应用于各种滤波器、开关电源等产品,但是共模电感是用来抑制共模干扰,而差模电感是用来抑制差模干扰,两种都是比较重要的滤波电感。...