码迷,mamicode.com
首页 > 其他好文 > 详细

Visitor模式

时间:2016-11-27 23:57:12      阅读:331      评论:0      收藏:0      [点我收藏+]

标签:列表   访问   参数   适合   元素   比较   算法   角色   数据结构   

访问者模式的目的是要把处理从数据结构中分离出来,如果系统有比较稳定的数据结构,又有易于变化的算法的话,使用访问者模式是个不错的选择,因为访问者模式使的算法操作的增加变得容易。相反,如果系统的数据结构不稳定,易于变化,则此系统就不适合使用访问者模式了。

访问者模式结构:
访问者角色(Visitor): 为该对象结构中具体元素角色声明一个访问操作接口. 
具体访问者角色(Concrete Visitor): 实现每个由访问者角色(Visitor)声明的操作.
元素角色(Element): 定义一个Accept操作,它以一个访问者为参数.
具体元素角色(Concrete Element): 实现由元素角色提供的Accept操作.
对象结构角色(Object Structure): 这是使用访问者模式必备的角色. 它要具备以下特征: 能枚举它的元素; 可以提供一个高层的接口以允许该访问者访问它的元素; 可以是一个复合(组合模式)或是一个集合, 如一个列表或一个无序集合.

 

核心:在不改变类层次结构的同时,向其中增加功能

 

Visitor模式

标签:列表   访问   参数   适合   元素   比较   算法   角色   数据结构   

原文地址:http://www.cnblogs.com/zhaojunyang/p/6107252.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!