Java設計模式之抽象工廠模式

2021-08-01 17:18:51 字數 1964 閱讀 3791

一、什麼是抽象工廠模式

抽象工廠模式是所有形態的工廠模式中最為抽象和最具一般性的。抽象工廠模式可以向客戶端提供乙個藉口,使得客戶端在不必指定產品的具體型別的情況下,能夠建立多個產品族的產品物件。

fruit介面

public

inte***ce

fruit

public

abstract

fruit

banana抽象類

public

abstract

class banana implements

fruit

fruitfactory工廠類

public

inte***ce

fruitfactory

northfruitfactory南方工廠

public

class northfruitfactory implements

fruitfactory

public

fruit getbanana()

}

southfruitfactory工廠類

public

class southfruitfactory implements

fruitfactory

public

fruit getbanana()

}

public

public

void

get()

}

northbanana北方香蕉

public

class northbanana extends

banana

}

public

public

void

get()

}

southbanana 南方香蕉
public

class southbanana extends

banana

}

如果我們增加乙個新的溫室系列產品則只需要新增

wenshifruitfactory 溫室工廠
public

class wenshifruitfactory implements

fruitfactory

public

fruit getbanana()

}

public

public

void

get()

}

wenshibanana 溫室香蕉
public

class wenshibanana extends

banana

}

測試類mainclass

public

class

mainclass

}

二、模式中包含的角色及其職責

1.抽象工廠(creator)角色

抽象工廠模式的核心,包含對多個產品結構的宣告,任何工廠類都必須實現這個介面。

2.具體工廠( concrete  creator)角色

具體工廠類是抽象工廠的乙個實現,負責例項化某個產品族中的產品物件。

3.抽象(product)角色

抽象模式所建立的所有物件的父類,它負責描述所有例項所共有的公共介面。

4.具體產品(concrete product)角色

抽象模式所建立的具體例項物件

總結:抽象工廠中方法對應產品結構,具體工廠對應產品族。

java設計模式之抽象工廠模式

以肯德基麥當勞為例 解析抽象的工廠模式,以下是 的實現 第乙個介面 hb 建立漢堡的工廠 package com.factory.hb hb 漢堡 author lx public inte ce factoryhb 第乙個實現類 肯德基的漢堡 package com.imple.hb import...

Java設計模式之抽象工廠模式

上兩篇講解了簡單工廠模式和工廠方法模式,下面講解工廠模式的最後乙個抽象工廠模式 隨著客戶的要求越來越高,寶馬車需要不同配置的空調和發動機等配件。於是這個工廠開始生產空調和發動機,用來組裝汽車。這時候工廠有兩個系列的產品 空調和發動機。寶馬320li系列配置a型號空調和a型號發動機,寶馬520li系列...

JAVA設計模式之抽象工廠模式

抽象工廠模式 產品類 發動機以及型號 public inte ce engine public class enginea extends engine public class enginebextends engine 空調以及型號 public inte ce aircondition pub...