访问者模式(Visitor Pattern):
表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类别的前提下定义作用于这些元素的新操作。(Represent an operation to be performedon the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates.)
模式动机:对于存储在一个集合中的对象,他们可能具有不同的类型(即使有一个公共的接口),对于该集合中的对象,可以接受一类称为访问者的对象来访问,不同的访问者其访问方式也有所不同。
开发中的场景 : (应用范围非常窄,了解即可):
- XML文档解析器设计;
- 编译器的设计;
- 复杂集合对象的处理
如果想了解更多设计模式,可点击:设计模式概述 以及 23种设计模式的介绍