23种设计模式(六)——装饰模式【单一职责】

news/2023/6/7 23:21:15

文章目录

    • 意图
    • 什么时候使用装饰
        • 真实世界类比
    • 装饰模式的实现
    • 装饰模式的优缺点

亦称: 装饰者模式、装饰器模式、Wrapper、Decorator

意图

装饰者模式(Decorator Pattern)允许向一个现有的对象扩展新的功能,同时不改变其结构。主要解决直接继承下因功能的不断横向扩展导致子类膨胀的问题,无需考虑子类的维护。

在这里插入图片描述

什么时候使用装饰

1、需要大量的子类为某一个对象进行职责增强的时候,可以使用装饰器模式

2、希望使用继承对于类进行动态扩展的时候,可以考虑使用装饰器模式

真实世界类比

在这里插入图片描述

穿上多件衣服将获得组合性的效果。

穿衣服是使用装饰的一个例子。 觉得冷时࿰

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4561197.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

idea如何设置导包不带*号

idea 如果没有设置 默认超过5个相同包的类就会变成 * 号, 这其实是很容易满足的,而且随着代码量的增多,我们往往不会去注意到顶部的导包代码。 当一个类导入的包太多时,往往会影响到整个工程的启动速度,增加缓存。 所…

IDEA自动导包设置,敲代码直接起飞

IDEA自动导包设置 今天在一个新电脑上配置环境,发现没有自动导包功能,我这边还是做一个记录吧。方便我日后查看,也方便大家查看。 在settings–》Editor–》General–》Auto Importw–》在java栏中勾选如下图中两个选项。 勾选完之后&…

IDEA中导包没有提示包问题的解决

今天魔力圆圈和大家分享一个关于idea中提示包用不了(用AltEnter不能导包,只能手打进行导包),有一次我打代码时发现,我要导入注解的包怎么导入都没有用(需要手打进行导包),我还以为我idea有问题,我又去创建了一个新的项…

IDEA从零到精通(33)之IDEA优化导包(自动导入包、删除包)

文章目录作者简介引言导航概述设置测试实例小结导航热门专栏推荐作者简介 作者名:编程界明世隐 简介:CSDN博客专家,从事软件开发多年,精通Java、JavaScript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性…

java面向对象,全是对象,这么多对象2023015

面向对象(一遍一遍的领悟) Java支持面向对象的三大特征:封装、继承和多态, Java提供 了private、protected和public三个访问控制修饰符来实现良好的封装,提供了extends关键字来让子类继承父类,子类继承父类…

阿里来了一个“超级新星”

当我们向元宇宙迈进。 天下网商 贡晓丽 还有十来天就到中秋节,作为节日刚需的月饼已经占据各大网购平台的C位。而今年天猫,消费者不再像过去一样,购买常规的月饼礼盒,而是有机会收藏到一枚NFT (非同质代币)数字月饼。 数字月饼不…

阿里云上,盒马狂奔

四岁了,盒马依旧在加速狂奔。 2019年3月底,成都盒马高笋塘店开门迎客。这是成都的第12家盒马店,接踵摩肩的消费者热情依旧。一个统计,成都主城区的盒区房覆盖率全国第一,达到75%,服务小区数量超过9100个。…

你怎么看待《在今天这个故事里,阿里巴巴就是四十大盗》

想起去年阿里月饼门事件,今年又有人在各大社交平台发声《在今天这个故事里,阿里巴巴就是四十大盗》,以下是原文:不过这件事情,从模仿角度来说...毕竟互联网产品很多Idea都是互相抄袭,背锅最后都是工程师。天…