常用的設(shè)計(jì)模式

Java中常用的設(shè)計(jì)模式

1.單例模式

單例模式有以下特點(diǎn):

1、單例類只能有一個(gè)實(shí)例。

2、單例類必須自己創(chuàng)建自己的唯一實(shí)例。

3、單例類必須給所有其他對(duì)象提供這一實(shí)例。

單例模式確保某個(gè)類只有一個(gè)實(shí)例,而且自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。

總之,選擇單例模式就是為了避免不一致?tīng)顟B(tài),避免政出多頭。

推薦鏈接:http://blog.csdn.net/jason0539/article/details/23297037

2.工廠模式

工廠模式的兩種情況:

1.在編碼時(shí)不能預(yù)見(jiàn)需要?jiǎng)?chuàng)建哪種類的實(shí)例。

2.系統(tǒng)不應(yīng)依賴于產(chǎn)品類實(shí)例如何被創(chuàng)建、組合和表達(dá)的細(xì)節(jié)

推薦鏈接:http://www.cnblogs.com/poissonnotes/archive/2010/12/01/1893871.html

3.建造著模式

該模式其實(shí)就是說(shuō),一個(gè)對(duì)象的組成可能有很多其他的對(duì)象一起組成的,比如說(shuō),一個(gè)對(duì)象的實(shí)現(xiàn)非常復(fù)雜,有很多的屬性,而這些屬性又是其他對(duì)象的引用,可能這些對(duì)象的引用又包括很多的對(duì)象引用。封裝這些復(fù)雜性,就可以使用建造模式。

推薦鏈接:http://www.cnblogs.com/cbf4life/archive/2010/01/14/1647710.html

4.門(mén)面模式

這個(gè)模式個(gè)人感覺(jué)像是Service層的一個(gè)翻版。比如Dao我們定義了很多持久化方法,我們通過(guò)Service層將Dao的原子方法組成業(yè)務(wù)邏輯,再通過(guò)方法向上層提供服務(wù)。

為一個(gè)復(fù)雜子系統(tǒng)提供一個(gè)簡(jiǎn)單接口

提高子系統(tǒng)的獨(dú)立性

在層次化結(jié)構(gòu)中,可以使用Facade模式定義系統(tǒng)中每一層的入口

推薦鏈接:http://www.cnblogs.com/skywang/articles/1375447.html

5.策略模式

感覺(jué)沒(méi)找到寫(xiě)的特別好的博客,可能是不合胃口。小編喜歡用實(shí)際例子來(lái)講的博客。下面的鏈接是360百科的解釋。

推薦鏈接:http://baike.so.com/doc/1838412-1944078.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容