struts2-设计模式.ppt





《struts2-设计模式.ppt》由会员分享,可在线阅读,更多相关《struts2-设计模式.ppt(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Struts2设计模式之装饰(Decorator)模式Logo装饰(Decorator)模式1.装饰模式的定义2.装饰模式的构成要素3.装饰模式的应用案例定义装饰模式的基本含义是能够动态地为一个对象添加一些额外的行为职责谈到对象行为职责的扩展,很容易想到面向对象编程语言的 一个重要特征:继承继承的扩展特性:(1)现有对象行为的覆盖-通过覆写(Override)父类中已有的方法(2)添加新的行为职责-通过子类中添加新的方法完成。既然有继承,那为什么还要设计模式来进行对象行为职责的扩展呢?Reason 继承为对象类型所引入的是一种静态特性扩展。意思是必须编写一个子 类,并在其中通过语法所支持的函数
2、覆盖后者函数添加的方式扩展器行为特征。这一扩展后的行为特征的获取在编译期就被决定,而并非是一个运行期的扩展模式。随着子类的增多,虽然获得了更多的功能扩展,然而各种子类的组合将导致子类的极度膨胀。在java世界中,一个类只能进行单根继承而无法支持多重继承,因而通过继承这种发式进行功能行为特性的扩展缺乏足够的灵活性。特性过度依赖使用继承来进行对象的功能扩展目的解决什么?进行对象行为职责扩展动态(扩展特性在运行期自动获取)目的和特性原始接口(Component)-定义了一个接口方法默认目标实现类(TargetComponent)-对于原始接 口的默认实现方法装饰实现类(ComponentDecora
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- struts2 设计 模式

限制150内