主要有以下三種factory模式:
****** factory模式 專門定義乙個類來負責建立其它類的例項,被建立的例項通常都具有共同的父類。 factory method模式 將物件的建立交由父類中定義的乙個標準方法來完成,而不是其建構函式,究竟應該建立何種物件由具體的子類負責決定。
abstract factory模式 提供乙個共同的介面來建立相互關聯的多個物件。
一、****** factory模式:
1、 在這裡,我們先定義水果(fruit)介面:
public inte***ce fruit
public void enableeat() else if (which.equalsignorecase("pear")) else if (which.equalsignorecase("grape")) else public void enableeat()
/** * 買肉的工廠方法 */
public meat buymeat(meat whichmeat)
11、說明:
a:抽象工廠模式可以向客戶端提供乙個介面,使得客戶端在不必指定產品的具體型別的情況下,建立多個產品族中的產品物件。這就是抽象工廠模式的用意。
b:抽象工廠模式是所有形態的工廠模式中最為抽象和最具一般性的一種形態。
c:抽象工廠模式與工廠方法模式的最大區別就在於,
工廠方法模式針對的是乙個產品(fruit)等級結構;
而抽象工廠模式則需要面對多個產品等級結構(fruit、meat)。
設計模式 工廠模式 抽象工廠模式
建立物件時不會對客戶暴露建立邏輯,並且通過使用乙個共同的介面來指向建立的物件。sept1 建立乙個公共介面,將要對外開放的方法在這裡定義。sept2 建立實現介面的類,用即實現對外開放的類的方法 sept3 建立工廠,提供乙個get方法,這個方法提供返回實現類的物件 建立選擇 sept4 使用,建立...
設計模式 工廠設計模式
用於建立物件的介面,交給子類去實現 我們舉乙個生產nokia的例子 public abstract class nokiaphone先試定義了乙個抽象類,抽象出方法poweronphone 模擬手機開機的動作 public class nokia5200 extends nokiaphone pub...
設計模式 工廠設計模式
工廠模式分為工廠方法模式和抽象工廠模式 工廠方法模式分為 普通工廠模式,就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。多個工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字串出錯,則不能正確建立物件,而多個工廠方法模式是提供多個工廠方法,分別建立物件。靜態工廠...