Java中常用的設計模式
1.單例模式
單例模式有以下特點:
1、單例類只能有一個實例。
2、單例類必須自己創建自己的唯一實例。
3、單例類必須給所有其他對象提供這一實例。
單例模式確保某個類只有一個實例,而且自行實例化并向整個系統提供這個實例。
總之,選擇單例模式就是為了避免不一致狀態,避免政出多頭。
推薦鏈接:http://blog.csdn.net/jason0539/article/details/23297037
2.工廠模式
工廠模式的兩種情況:
1.在編碼時不能預見需要創建哪種類的實例。
2.系統不應依賴于產品類實例如何被創建、組合和表達的細節
推薦鏈接:http://www.cnblogs.com/poissonnotes/archive/2010/12/01/1893871.html
3.建造著模式
該模式其實就是說,一個對象的組成可能有很多其他的對象一起組成的,比如說,一個對象的實現非常復雜,有很多的屬性,而這些屬性又是其他對象的引用,可能這些對象的引用又包括很多的對象引用。封裝這些復雜性,就可以使用建造模式。
推薦鏈接:http://www.cnblogs.com/cbf4life/archive/2010/01/14/1647710.html
4.門面模式
這個模式個人感覺像是Service層的一個翻版。比如Dao我們定義了很多持久化方法,我們通過Service層將Dao的原子方法組成業務邏輯,再通過方法向上層提供服務。
為一個復雜子系統提供一個簡單接口
提高子系統的獨立性
在層次化結構中,可以使用Facade模式定義系統中每一層的入口
推薦鏈接:http://www.cnblogs.com/skywang/articles/1375447.html
5.策略模式
感覺沒找到寫的特別好的博客,可能是不合胃口。小編喜歡用實際例子來講的博客。下面的鏈接是360百科的解釋。