10 常見設計模式

2021-07-26 22:50:48 字數 931 閱讀 7259

單例模式 保證類在記憶體中 只有乙個物件

1. 餓漢式:

1. 私有建構函式 private xx(){}

2. 自己建立私有本類物件 private static xx = new xx()

3. 對外提供公共訪問方法 public void getxx()

2. 懶漢式:延時載入

與餓漢的區別在於,物件的建立,只是宣告,

1. 私有構造 private xx(){}

2. 宣告本類物件,但不new private static xx;

3. 在公共的訪問方法中new 並賦值

public void getxx()

裝飾模式 在於對原有功能的增強

1. 有乙個介面,乙個介面的實現類

2. 新建乙個加強類實現介面,獲取被裝飾類的(原實現類) 引用,通過構造方法傳入被裝飾類的物件

3. 重寫介面的方法,呼叫被裝飾類的重寫方法,再增加新功能

工廠模式

概述:不在需要手動建立物件,全交給工廠生產,需要的時候呼叫工廠的對應的方法進行建立

1. 簡單工廠:靜態工廠方法 建立物件,如果有新的物件增加,就需要增加這個對應的靜態方法,不斷修改工廠類

2. 工廠方法:對簡單工廠的建立物件方法抽取成乙個介面,具體的物件建立,由繼承該介面的具體實現類完成,也就是說新的物件的建立,只需要乙個具體物件類,和具體工廠類,不用修改原**,維護方便

介面卡模式(原理)

1. 有乙個介面 規範

2. 乙個中間抽象類,實現該介面,重寫了裡面所有的方法,但是都是空的(設計成抽象類,是不想有人建立它,因為方法是空的,建立了也沒用)

3. 然後定義乙個類,繼承它,重寫這個類所需要的方法,而不用全部重寫。

模板設計模式:

1. 就是定義乙個演算法的骨架(抽象類),而將具體的演算法延遲到子類中來實現

常見設計模式

設計模式的目的 將易變的事物與不變的事物分開,隔離 中的更改。public class singleton6 public static singleton6 getinstance return instance 單例模式的幾種實現方式 餓漢式單例設計模式 public class runtime...

設計模式(10) 外觀模式

外觀模式 facade pattern 隱藏系統的複雜性,並向客戶端提供了乙個客戶端可以訪問系統的介面。這種型別的設計模式屬於結構型模式,它向現有的系統新增乙個介面,來隱藏系統的複雜性。這種模式涉及到乙個單一的類,該類提供了客戶端請求的簡化方法和對現有系統類方法的委託呼叫。用乙個簡單的例子來解釋一下...

設計模式10 外觀模式

外觀模式 facade pattern 外部與乙個子系統的通訊必須通過乙個統一的外觀物件進行,為子系統中的一組介面提供乙個一致的介面,外觀模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。外觀模式又稱為門面模式,它是一種物件結構型模式。外觀模式包含如下角色 結果 operation a.o...