手机版

二十三种设计模式类图(16)

发布时间:2021-06-07   来源:未知    
字号:

这些算法定义多个接口一 致,但是实现方法不同的版本,并在需要的时候灵活的替换这些算法。

实现:实 现方式同Bridge模式。

重构成本:中。

3.11Visitor

思想:表 示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。

场景:其 实你不用去理解上面这句话。该模式其实又是一个在代码的物理结构上和Bridge模式很相似的模 式。但是,其语义,其目的,在逻辑上又是不同的。如果说Bridge,以及上述我称为可视为Bridge扩 展的模式中,作为参数的Bridge类,是作为调用类的被访问对象的话,Visitor, 在大多数情形下,如其英文含义,它在语义上是完全相反的。不是他被调用的类处理,更大程度上它处于主动状态,是它去访问,去处理调用它的类。调用它的类, 把自己对别人隐藏起来的东西,暴露给Visitor品尝,任君蹂躏(这个,这个~~千 万别想歪了;-))。另一方面,即使逻辑上没有这种Visitor主 动去访问调用类的语义,只要Visitor类中的操作,是依赖于调用类的具体实现类(它本身或他某 个层次的子类)的某些状态或者方法的,那么,就可以应用该模式来分离出这样的可重用的操作。

二十三种设计模式类图(16).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)