zoukankan
html css js c++ java
北风设计模式课程---8、装饰器模式
北风设计模式课程---8、装饰器模式
一、总结
一句话总结:
对比学习:比如对比都是减少继承模式下类太多的组合模式和装饰模式,这样可以很好的加深理解和学习
装饰器模式的本质是:通过嵌套(嵌套也是一种组合)来替代继承关系
1、装饰器模式的本质和作用是什么?
通过嵌套(嵌套也是一种组合)来替代继承关系
作用:解决继承关系下类太多的问题
2、装饰器模式和组合模式都是通过组合来替代继承,那么他们的区别是什么?
组合:组合模式是把类组合在一起
嵌套:包装模式不仅是组合,更加强调的是嵌套
3、装饰类的物品和装饰之间是什么关系?
装饰包着物品
4、装饰器模式有哪几种角色,各自的功能是什么?
物品类:比如 礼品
装饰抽象类:接收外部传来的物品实例 比如 包装抽象类
装饰具体类:接收外部传来的物品实例 比如 第一层包装,第二次包装
5、装饰器模式中用来装饰的那些东西是什么?
函数:把和实例的函数组合在一起就可以也输出装饰的内容了
6、装饰器模式多层包装如何实现(或者说实现的注意要点)?
依次拆开每一层包装,里面都是一个完整的东西
嵌套:不同包装之间是包含(嵌套)关系
7、装饰器模式实现的核心步骤是什么?
装饰:装饰分为装饰抽象类和装饰具体类
包含关系:装饰 带 被装饰物品的实例的:外部传入这个物品,装饰器类里面有个方法接收这个物品
8、不同的交通工具有不同的功能,比如车能跑,飞机能飞,船能游,有的车能跑能游,有的飞机能飞能跑,怎么设计需求(假如又有别的交通工具能跳的需求)?
通过装饰器模式
二、内容在总结中
查看全文
相关阅读:
html设置360兼容/极速模式
es查询备忘录
TypeError: __init__() got an unexpected keyword argument 'strict'
pandas处理csv
scrapy中cookie处理
滑动验证码破解(一)
python 自定义属性访问 __setattr__, __getattr__,__getattribute__, __call__
数据库的增删改、单表查询
库的操作,表的操作,数据类型,完整性约束
Mysql常用命令(二)
原文地址:https://www.cnblogs.com/Renyi-Fan/p/11017860.html
最新文章
设计模式-建造者模式
设计模式-抽象工厂模式
asp.net sqlite 当插入数据后的第一次访问会变的很慢!
该字符串未被识别为有效的 DateTime
开发者,速度远比你以为的重要
(载文)优秀员工和优秀领导
查看SQL语句在SQL Server上的执行时间
此操作失败的原因是对 IID 为“{000208DA-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface
Office2010安装错误1402问题(我安装成功了)
SVN提交时响应很慢,我是这样解决的。
热门文章
win7远程桌面连接windows2008服务器,连接启动很慢。我是这样解决的。
moment.js当日时间默认值
css pie.htc使用总结
0到1两位小数正则
页面生成图片
dom反转排序
微信小程序入门教程--列表渲染多层嵌套循环及wx:key的使用
百度地图做网点地图-jeecms
使用vue2.0实现购物车和地址选配功能1
Fastclick导致IOS下多个 select ,点击某一个,焦点不停变换的bug
Copyright © 2011-2022 走看看