原创 JAVA設計模式之責任鏈模式

JAVA設計模式之責任鏈模式 概念: 將能夠處理同一類請求的對象連成一條鏈,所提交的請求沿着鏈傳遞,鏈上的對象逐個判斷是否有能力處理該請求,如果能則處理,如果不能,則傳遞給鏈上的下一個對象。 類圖 應用 java中,異常機制就是一種責

原创 JAVA設計模式之狀態模式

JAVA設計模式之狀態模式 概念: 狀態模式(status),用於解決系統中複雜對象的狀態轉換以及不同狀態下行爲的封裝問題。 角色 Context環境類:維護一個state對象,定義當前狀態。 State抽象狀態類 ConcretaSta

原创 JAVA設計模式之備忘錄模式

JAVA設計模式之備忘錄模式 概念: 備忘錄模式(memento),保存某個對象內部狀態的拷貝,這樣以後就可以將該對象恢復到原先的狀態。 結構 原發器類Originator:保存對象內部狀態 備忘錄類Memento:存儲狀態的拷貝 負責人

原创 JAVA設計模式之訪問者模式

JAVA設計模式之訪問者模式 概念: 封裝某些作用於某種數據結構中各元素的操作,它可以在不改變數據結構的前提下定義作用於這些元素的新的操作。 原因是對於存儲在一個集合中的對象,它們可能具有不同的類型(及時有一個公共的藉口),對於該集合中的

原创 JAVA設計模式之適配器模式

JAVA設計模式之適配器模式 設計模式的結構類型 概念: 適配器adapter模式:將一個類的接口轉換成客戶希望的另外一個接口。Adapter模式使得原本由於接口不兼容而不能一起工作的那些類可以在一起工作。 應用: -系統需要使用現有的

原创 JAVA設計模式之裝飾模式

JAVA設計模式之裝飾模式 概念: 裝飾模式(decorator) 動態的爲一個對象增加新功能 裝飾模式是一種用於代替繼承的技術,無需通過繼承增加子類,就能擴展對象的新功能。使用對象的關聯關係替代繼承關係,更加靈活,同時避免類型體系的快速

原创 JAVA設計模式之模板方法模式

JAVA設計模式之模板方法模式 概念: 模板方法模式(template method),模板方法定義一個操作中的算法骨架,將某些步驟延遲到子類中實現。這樣,新的子類可以在不改變一個算法結構的前提下重新定義該算法的某些特定步驟。 在某些類的

原创 JAVA設計模式之代理模式

JAVA設計模式之代理模式 概念: 通過代理模式,控制對象訪問,可以詳細的控制某個類或對象的方法,在調用這個方法前做前處理,在調用這個方法後做後置處理(即AOP的微觀實現) 角色 抽象角色 定義代理角色和真實角色的公共對外關係。 真實角

原创 JAVA設計模式之外觀模式

JAVA設計模式之外觀模式 概念: 先了解一個基本法則: 迪米特法則(最少知道原則)(Demeter Principle) 一個類對自己依賴的類知道的越少越好。無論被依賴的類多麼複雜,都應該將邏輯封裝在方法的內部,通過public方法提供

原创 23種設計模式

23種設計模式 設計模式分爲三大類: 創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。 結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。 行爲型模式,共十一

原创 JAVA設計模式之命令模式

JAVA設計模式之命令模式 概念: 將來自客戶端的請求封裝成一個對象,從而使你可用不同的請求對客戶進行參數化。用於“行爲請求者”與“行爲實現者”解耦,可實現二者之間的鬆耦合,以便適應變化。分離變化與不變的因素。命令模式也被稱之爲動作Act