學習設計模式 簡單工廠模式

2021-10-01 22:51:31 字數 810 閱讀 5206

提供乙個能夠建立具有所需要的功能類的例項物件,而無需關心其內部是如何實現的,被建立的例項物件的型別可以是介面、抽象類或具體實現類。

api:即所需要的所有功能介面

impl:api的具體實現類,可以有多個

factory:工廠類,用於建立所需要的api的例項物件

client:通過factory來獲取所需要的api的例項物件

public inte***ce api 

public class impla implements api

}public class implb implements api

}/**

* @classname:factory

* @description:工廠類

*/public class factory

//將建立例項物件的**邏輯提取出來並放在乙個private方法中,可以提高隱蔽性

private static api createapi(int condition)else }}

public class client

}

1. 為何建議使用介面或抽象類來作為api部分:介面或者說抽象類不變,那麼其實現類的內部方法的變化不會影響到外部的應用,這就對於應用程式帶來了良好的擴充套件性和可維護性。

2. api部分對於介面和抽象類的選擇:首選介面作為api,如果api中有子類需要實現的公共的功能(方法中的邏輯**相同),那麼就選擇抽象類

3. 如果過有多個impl,在client中選擇具體impl的方法:可以通過傳入方法引數來確定具體是哪乙個,也可以通過配置檔案來決定

設計模式學習 簡單工廠模式

今天把專案都做完後,就開始繼續學設計模式。剛看了簡單的工廠模式,感覺之前對物件導向這個概念實在是太淺了,在我的觀念中,一直認為程式只要能執行,沒有bug就是成功的,但是看了設計模式之後,發現原來的觀念實在是太表面化了,沒有深入的理解物件導向這個概念。我是看了 大話設計模式 這本書開始學的,感覺講的簡...

設計模式學習 簡單工廠模式

建立抽象產品類,定義所有產品的公共介面。建立具體產品類,繼承於產品抽象類,建立工廠類,在內部定義靜態方法,生產每個具體產品類的例項。外部通過呼叫工廠類的靜態方法,並傳入引數來得到所需的產品。某玩具工廠同時接到了三個不同客戶的訂單,需要生產一批玩具汽車 玩具飛機 玩具火車。於是工廠開設三條流水線進行生...

設計模式 工廠模式(簡單工廠)

一 簡單工廠 定義 簡單工廠模式 factory pattern 屬於類的創新型模式,又叫靜態工廠方法模式 static factorymethod pattern 是通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。特點 工廠類直接實現,乙個產品介面,乙個工廠類可以產生多...