狀態模式
將物件的轉換封裝在內部
組合模式
元件在內部具有特定的資料結構
使用者操作 但是不想讓得知內部的實施細節
使用者對元件的內部的物件操作 使用者操作乙個物件
多型呼叫&執行時依賴
編譯是確定型別
編譯時多型:大作業的時候要求加入這個的理解
效能較好
迭代器模式
獲得當前的元素
下乙個元素
開頭是否結束
迭代多型
遍歷不同的集合的結構提供乙個統一的介面
從而支援同樣的演算法在不用的結構上執行
eg
三角網格的類庫設計
半邊
一條邊對應兩條半邊
類似於直線的方向向量
可以用迭代器對點和邊進行遍歷
對偶半邊
同一直線的另一條半邊
大作業
選擇 6 種模式
設計模式 迭代器和組合模式
給餐廳選單加入乙個迭代器 public inte ce iterator boolean hasnext object next public class dinermenuiterator implements iterator menuitem items int position 0 publ...
設計模式 迭代器和組合模式
另外做為迭代器,首先你要獲取資料 構造方法 你至少要有最小的執行單位,乙個是next 來獲取下乙個資料,那隨之而來就需要判斷下乙個是否存在,需要hasnext 方法,再加remove 方法。並且聚合物件要實現迭代器介面,這樣客戶端就可以針對介面程式設計,還要需要返回乙個迭代器方法,把聚合物件傳入進去...
迭代器模式 組合模式
迭代器模式 提供一種方法順序訪問乙個聚合物件中的各個元素去,而又不暴露其內部的表示。文中例子 兩個餐廳要進行合併,選單需要遍歷,所以定義了乙個迭代器介面,然後定義了兩個繼承了該介面的迭代器,儘管由選單返回迭代器,但是選單不實現迭代器。心得 資料有很多種儲存方法,為了讓程式設計師能更專心於當前開發,因...