首頁  >  文章  >  Java  >  Java常見的設計模式

Java常見的設計模式

伊谢尔伦
伊谢尔伦原創
2016-12-05 13:44:021142瀏覽

Java總共有23常見的設計模式。它們主要可分為3類,創建型,結構型以及行為型。 
創建型的設計模式有:

一、Singleton,單例模式:保證一個類別只有一個實例,並提供一個唯一的全域存取點。

二、Abstract Factory,抽象工廠:提供一個創建一系列相關或互相依賴的物件的接口,而無需指定它們的具體類別。

三、Factory Method,工廠方法:定義一個用於創建物件的接口,Factory Method將一個類別的實例化延遲到了子類別。

四、Builder,建造模式:將一個複雜類別的建構和表示分離開來,使得具有相同建構過程的類別可以有不同的表示。

五、Prototype,原型模式:用原型實例來指定建立物件的種類,並且透過拷貝原型來建立新的物件。

行為型的設計模式有:

六、Itrator,迭代器模式:提供一個方法順序的遍歷一個聚合對象的內部元素,而無需曝光這個對象的內部表示。

七、Observer,觀察者模式:定義物件之間一對多的關係,當一個物件發生變化時,依賴它的物件都會得到對應的通知更新。

八、Templete Method,模板方法:定義一個操作中的演算法的骨架,而將一些步驟延遲到子類,Templete Method使得子類別可以不改變演算法的骨架就可以改變演算法中的特定的步驟。

九、Command,命令模式:將一個請求封裝為一個對象,從而使你可以用不同的請求對用戶進行參數化,對請求排隊和記錄請求日誌,以及支援可撤銷的操作。

十、State,狀態模式:允許物件在其狀態改變時改變其行為,物件看起來好像改變了它的類別。

十一、Strategy,策略模式:定義一系列的演算法,把它們一個個的封裝起來,使得它們可以互相的替換,本模式可以使演算法可以獨立於使用它的客戶。

十二、China of Responsibility,職責鏈模式:使多個物件都有機會處理請求,避免請求者和處理者之間的耦合關係。

十三、Mediator,中介模式:利用一個中介物件封裝一些物件的互動。

十四、Visitor,訪客模式:表示一個作用於某個物件結構中的各個元素的操作,它使你可以在不改變各個元素類別的前提下定義作用於這個元素的新操作。

十五、Interpreter,解釋器模式:給定一個語言,定義它的一個文法的表示,定義一個解釋器,這個解釋器使用該表示來解釋該語言中的句子。

十六、Memento,備忘錄模式:在不破換物件的前提下,捕捉物件的內部狀態,並在該物件之外保存這個狀態。

結構型的設計模式有:

十七、Composite,組合模式:將物件組合成樹狀結構以表示部分整體的關係,使得使用者對單一物件和組合物件的使用具有一致性。

十八、Facade,外觀模式:為子系統中的一組結構提供一致的界面,Facade提供這一高層接口,這一接口使得系統更易使用。

十九、Proxy,代理模式:為其他物件提供一種代理以控制對這個物件的存取。

二十、Adapter,適配器模式:將一類接口轉換成用戶希望的一類接口,Adapter使得原本由於接口不相容而不能在一起工作的那些類可以一起工作了。

二十一、Decorator,裝飾模式:動態的為物件添加一些額外的職責,就增加的功能來說,Decorator比其生成子類別的方法要更加的靈活。

二十二、Bridge,橋模式:將抽象部分和它的實現部分分離開來,使得它們可以獨立的變化。

二十三、Flyweight,享元模式:它使用共享物件,用來盡可能的減少記憶體使用量以及分享資訊給盡可能多的相似物件。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn