工廠模式與抽象工廠模式

2022-03-29 01:54:48 字數 649 閱讀 8000

1、工廠模式:定義了一組建立物件的介面,但是由子類決定要例項化的類是哪乙個。工廠方法把類的例項化推遲到子類中。

現在考慮有pizzastore有一些子類(加盟店),他們有可能對pizza的做法進行一些改良,即createpizza方法需要公升級。工廠方法的做法是,在基類中建立乙個形為abstract product factorymethod(string type) 的方法,作為工廠方法,負責建立物件,子類可以通過改寫這一方法來改變建立物件的具體過程。

子類返回的pizza型別的物件,父類可以拿來統一使用,不用關心具體的型別

2、抽象工廠模式:提供乙個介面,用於建立乙個物件家族,而無需指定具體類。

工廠方法只涉及到建立乙個物件的情況,有時我們需要一族物件,比如書中的例子:原料家族。

製作pizza需要很多原料,每個都需要乙個工廠方法。這時我們把所有涉及到建立物件的方法集合到一起成為乙個介面。

使用者針對這個介面程式設計,而介面由具體的類來實現。這樣一來我們可以根據情況把相應的實現此介面的類傳遞給使用者。

工廠模式與抽象工廠模式

原始出處 作者資訊和本宣告。否則將追究法律責任。工廠模式與抽象工廠模式,相信同行不會陌生 在網上及相關書裡面也看過這方面的介紹 推薦這兩本書 steven john metsker s design patterns in c 和 gof s design pattern framework2.0 ...

抽象工廠模式 抽象工廠模式

抽象工廠模式其實是圍繞了乙個超級工廠建立其他的工廠 可參考工廠模式 這個超級工廠又可以想像成是其他工廠的工廠,這種設計模式是一種建立型模式。在抽象工廠模式中,介面是負責建立乙個相關物件的工廠,不需要顯式指出其類。每個生成的工廠都能按照工廠模式提供物件。意圖提供乙個建立一系列相關或相互依賴物件的介面,...

c 工廠模式與抽象工廠模式。

工廠模式與抽象工廠模式,相信同行不會陌生 在網上及相關書裡面也看過這方面的介紹 推薦這兩本書 steven john metsker s design patterns in c 和 gof s design pattern framework2.0 今天抽點時間,寫點這方面的東西,希望能起到一點拋...