访问者模式

定义

  • 封装作用于某数据结构(List/Set/Map)中的各元素的操作
  • 可以在改变各元素的类的前提下,定义作用于这些元素 的操作

类型:行为型

使用场景

  • 一个数据结构(List/Set/Map)包含很多类型的对象(不同类型继承同一个父类)
  • 数据结构与数据操作分离
  • 不同的访问者对相同的数据(不同类型继承同一个父类)产生不同的操作行为

优缺点

优点:

  • 增加新的操作很容易,即增加一个新的访问者

缺点:

  • 增加新的数据结构困难
  • 具体元素变更比较麻烦

UML类图

访问者模式_第1张图片
image.png

你可能感兴趣的:(访问者模式)