Java中設計模式(java design patterns)通常有23種。
設計模式6大原則:
單一職責、裡氏替換、依賴倒置
接口隔離、迪米特、開閉原則
模式可以分成3類:建立型、行為型和結構型。
建立型模式
建立型模式涉及對象的執行個體化,特點是不讓使用者代碼依賴于對象的建立或排列方式,避免使用者直接使用new建立對象。
建立型模式有以下5個:
工廠方法模式、抽象工廠方法模式、生成器模式、原型模式和單例模式。
行為型模式
行為型模式涉及怎樣合理的設計對象之間的互動通信,以及怎樣合理為對象配置設定職責,讓設計富有彈性,易維護,易複用。
行為型模式有以下11個:
責任鍊模式、指令模式、解釋器模式、疊代器模式、中介者模式、備忘錄模式、觀察者模式、狀态模式、政策模式、模闆方法模式和通路者模式。
結構型模式
結構型模式涉及如何組合類和對象以形成更大的結構,和類有關的結構型模式涉及如何合理使用繼承機制;和對象有關的結構型模式涉及如何合理的使用對象組合機制。
結構型模式有以下7個:
擴充卡模式、組合模式、代理模式、享元模式、外觀模式、橋接模式和裝飾模式。