23种设计模式之访问者模式(Visitor)
访问者模式是一种对象的行为性模式,用于表示一个作用于某对象结构中的各元素的操作,它使得用户可以再不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式使得增加新的操作变得很容易,但在一定程度上破坏了封装性。
优点:
1)更容易添加新操作。
2)集中相关操作并且排除不相关操作。
使用场景:
1)对象结构包含许多具有不同接口的对象类,并且向要对这些依赖于具体类的对象进行操作。
2)定义对象结构的类很少被修改,但想要在此结构之上定义新的操作。Visitor 模式