访问者模式介绍
对于某种数据结构,可以在这些数据结构上进行操作,减少数据结构和操作之间的耦合性,是操作的部分可以自由的改变。
访问者模式优点
- 比较容易扩展,如果对于结构有新的操作的话,只需要增加新的操作访问者类即可。
场景
例:例如有一个单个对象和一组对象,现在要打印单个对象的名称和一组对象的名称。
-
抽象角色和抽象访问者。
-
实现具体的角色,每个角色的数据结构不一样。
-
实现具体的访问者,实现自己的操作。
-
客户端调用及结果。
对于某种数据结构,可以在这些数据结构上进行操作,减少数据结构和操作之间的耦合性,是操作的部分可以自由的改变。
例:例如有一个单个对象和一组对象,现在要打印单个对象的名称和一组对象的名称。
抽象角色和抽象访问者。
实现具体的角色,每个角色的数据结构不一样。
实现具体的访问者,实现自己的操作。
客户端调用及结果。