天天看點

通路者模式

一、通路者模式介紹

封裝作用于某資料結構(如List/Set/Map等)中的各元素的操作

可以在不改變各元素的類的前提下,定義作用于這些元素的操作

類型:行為型

一個資料結構如(List/Set/Map等)包含很多類型對象

資料結構與資料操作分離

增加新的操作很容易,即增加一個新的通路者

具體元素變更比較麻煩

通路者模式和疊代器模式

共同點:都是在某種資料結構上進行處理,例如List、Map、Set

通路者模式主要用于 對儲存在資料結構中的元素進行某種特定的處理

疊代器模式主要用于 逐個周遊儲存在資料結構中的元素

二、代碼示例

模拟場景:針對免費課程和實戰課程,通路者做出不同的行為

課程抽象類:

課程實作類1(免費課程):

課程實作類2(實戰課程):

通路者接口:

通路者實作類:

上一篇: 通路者模式
下一篇: 通路者模式

繼續閱讀