 
         
         
         
         
        
            已阅读5页,还剩8页未读,            继续免费阅读
        
        
                版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
            Struts2设计模式之装饰(Decorator)模式 Logo 装饰(Decorator)模式 1.装饰模式的定义 2.装饰模式的构成要素 3.装饰模式的应用案例 定义 装饰模式的基本含义是能够动态地为一个对象添加一些额 外的行为职责 谈到对象行为职责的扩展,很容易想到面向对象编程语言的 一个重要特征:继承 继承的扩展特性 : (1)现有对象行为的覆盖 - 通过覆写(Override)父类中已 有的方法 (2)添加新的行为职责 -通过子类中添加新的方法完成。 既然有继承,那 为什么还要设计模式 来进行对象行为职责 的扩展呢? Reason 继承为对象类型所引入的是一种静态特性扩展。意思是必须编写一个子 类,并在其中通过语法所支持的函数覆盖后者函数添加的方式扩展器行为特 征。这一扩展后的行为特征的获取在编译期就被决定,而并非是一个运行期 的扩展模式。随着子类的增多,虽然获得了更多的功能扩展,然而各种子类的组 合将导致子类的极度膨胀。在java世界中,一个类只能进行单根继承而无法支持 多重继承,因而通过继承这种发式进行功能行为特性的扩展缺乏足够的灵活性。 特性 过度依赖使用 继承来进行对 象的功能扩展 目的解决什么? 进行对象行 为职责扩展 动态(扩展 特性在运行 期自动获取 ) 目的和特性 原始接口(Component)-定义了一个接口方法 默认目标实现类(TargetComponent)-对于原始接 口的默认实现方法 装饰实现类(ComponentDecorator)-同样实现了原 始接口,既可以是一个抽象类,也可以是一个具体实现类 。其内部更涨了一个原始接口的对象实例: targetComponenet,这个实例的实现往往被初始化成 默认目标实现类(TargetComponenet) 具体装饰实现类(ComponentDecoratorA)-继承装饰 类(ComponentDecorator),可以在operation方法 中调用原始接口的对象实例targetComponenet获得默 认目标实现类的行为方式在其中加入行为扩展实现。 装饰(Decorator)模式 初识一下。 图析 为什么命名“装饰模式”? 默认目标实现TargetComponent类封装与具体的装饰实现类 ComponentDecorator或者其子类的内部,从而形成对象之间的引用关系 具体装饰实现类(ComponentDecorator)同样实现了原始接口 装饰模式比“继承”有哪些灵活的应用场景呢? 适合对默认目标中多个接口进行排列组合的调度 适合对默认目标进行选择性扩展 适合对默认目标中未知或者不易扩展的情况 案例: 在运行期,当我们需要对 httpservletRequest和 httpServletResponse的默认实现行 为进行扩展时,我们就可以继承 HttpservletRequestWrapper或者 HttpServletResponseWrapper,它 们提供了一个科传入对应 httpServletRequest和 HrrpservletResponse接口的构造函 数,并在构造函数中实现了将原始 HttpServletRequest和 HttpServletResponse接口的实现封 装与内部的基本逻辑。 图例 ServletRequest HttpServletRequest HttpServletRequestWrapper Sam        
    温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030眼科光学设备成像质量检测及行业发展趋势报告
- 2025-2030益生菌制剂改善早产儿神经发育的临床试验设计
- 2025-2030留学咨询服务市场深度调研及前景预测报告
- 2025-2030电力行业绿色转型与新能源布局战略分析报告
- 中西医结合执业医师考核试题及答案
- 2025-2030环保设备行业市场格局及技术发展趋势报告
- 2025-2030环保设备产业市场发展现状及投资前景评估报告
- 景德镇市人民医院激光治疗并发症处理考核
- 福州市中医院超声患者沟通考核
- 杭州市人民医院口腔感染控制专项考核
- 造口护理指南
- 小红书介绍教学课件
- 2025年农业科技与管理考试试题及答案
- 武器装备生产管理制度
- 儿童流感科普课件
- 《文明的冲突和世界秩序的重建》内容结构课件
- 2025年广东第一次高中学业水平合格考语文试卷真题含答案详解
- 教育心理学论文4000字
- 小园三部合唱简谱春天少年合唱团
- 土坝灌浆规范
- 生理学 课件 第七章 能量代谢与体温
 
            
评论
0/150
提交评论