簡單工廠vs工廠方法vs 抽象工廠方法

2021-10-10 17:40:23 字數 382 閱讀 4978

以乙個例子來表示:

1.  生產car(產品)。 我們可以直接car car= new car(); 該工廠只生產這個產品。《具體工廠->具體產品(1:1)>

2. 當car的種類增多以後,我們引入簡單工廠。簡單工廠使用繼承和switch來顯示多型。我們將引入抽象工廠ca***ctory。同時,產品將抽象為抽象產品。car car=new ca***ctory("bwm")。 該工廠生產不同的產品。《抽象工廠->具體產品(1:n)>

3. 抽象工廠將邏輯判斷並生成具體產品。而工廠方法是每個具體產品由具體的工廠產出。《抽象工廠->具體工廠->具體產品(1:n, 1:1)>

4. 抽象工廠方法是每個具體工廠可以建立多個種類的產品(同一產品簇)。《抽象方法->->具體產品(1:n,1:n)>

簡單工廠 VS 工廠方法 VS 抽象工廠

說到設計模式,自然少不了簡單工廠模式,工廠方法和抽象工廠這三姐妹。它們之間可謂是各有所長,術業專攻啊!這篇部落格來簡單的梳理一下三者之間的關係。那麼工廠又是什麼意思呢?結合三者的特點,我認為可以這樣理解 工廠可以看做乙個特殊的類,在這個類中專門負責生產一系列產品 物件 的乙個集合就可以成為工廠。那麼...

簡單工廠 VS 工廠方法 VS 抽象工廠

說到設計模式。自然少不了簡單工廠模式。工廠方法和抽象工廠這三姐妹。它們之間可謂是各有所長,術業專攻啊!這篇部落格來簡單的梳理一下三者之間的關係。那麼工廠又是什麼意思呢?結合三者的特點,我覺得能夠這樣理解 工廠能夠看做乙個特殊的類,在這個類中專門負責生產一系列產品 物件 的乙個集合就能夠成為工廠。那麼...

簡單工廠 VS 工廠方法

1 工廠方法模式介紹 工廠方法模式 定義乙個用於建立物件的介面,讓子類決定例項化哪個類。工廠方法使乙個類的例項化延遲到子類。還以簡單工廠模式中的例子為例 將簡單工廠模式中的工廠 tv類提出來作為乙個公共的介面,而對應的各個功能類各建立乙個具體的工廠去實現這個介面。如下 inte ce ifactor...