23種設計模式之通路者模式(Visitor)
通路者模式是一種對象的行為性模式,用于表示一個作用于某對象結構中的各元素的操作,它使得使用者可以再不改變各元素的類的前提下定義作用于這些元素的新操作。通路者模式使得增加新的操作變得很容易,但在一定程度上破壞了封裝性。
優點:
1)更容易添加新操作。
2)集中相關操作并且排除不相關操作。
使用場景:
1)對象結構包含許多具有不同接口的對象類,并且向要對這些依賴于具體類的對象進行操作。
2)定義對象結構的類很少被修改,但想要在此結構之上定義新的操作。
Visitor 模式