簡單工廠:由工廠產生實現同一接口的對象 只有一個工廠:對一類對象抽象成一個工廠 由工廠產生對象
比如:工廠包含:鉛筆,圓珠筆,鋼筆
工廠方法:延遲到子類實例 有多個工廠,但每個工廠只能產生一類對象
比如:抽象工廠包含: mysql 和oracle ,mysql工廠產生 mysql驅動,oracle工廠產生oracle驅動
抽象工廠:對多個工廠的抽象 有多個工廠,但每個工廠可以產生一組對象:對一類工廠抽象成一個抽象工廠,
比如:抽象工廠包含:形狀和顏色;形狀工廠:長,高,圓,顏色工廠:紅,黑,藍
單例模式: 全局唯一
適配器模式:兩個不兼容接口之間的橋樑 比如1:讀卡器是作爲內存卡和筆記本之間的適配器
比如2:media接口 play1實現media 只可以可以播放mp3,AdvancedMedia接口 play2實現AdvancedMedia 可以播放 mp4和vlc
創建一個MediaAdapter 引用AdvancedMedia ,由傳入類型(mp3,mp4,vlc),來決定創建哪種類型播放器
策略模式:創建表示各種策略的對象和一個行爲隨着策略對象改變而改變的 context 對象
比如:Strategy 接口 由加,減,乘,除實現,創建一個context對象 引用Strategy 接口並創建一個執行Strategy 的方法;
觀察者模式:當一個對象被修改時,則會自動通知它的依賴對象
比如:被觀察者Subject 創建一個list引用,觀察者引用 Subject ,觀察者放入list集合,被觀察者出現變化時 遍歷list 通知觀察者
裝飾者模式:允許向一個現有的對象添加新的功能,同時又不改變其結構
比如:創建類A 創建類B 類B引用類A 並在類A的方法中加入新功能
過濾器模式:開發人員使用不同的標準來過濾一組對象
比如:創建一個 Person 對象、Criteria 接口和實現了該接口的實體類,來過濾 Person 對象的列表
把Person 過濾成 男,女,單身,結婚等結果
攔截過濾器:用於對應用程序的請求或響應做一些預處理/後處理 過濾攔截