模式三 抽象工廠模式

2021-05-23 07:26:26 字數 1075 閱讀 7117

抽象工廠是指乙個等級結構可以建立出分屬於不同產品等級結構的乙個產品族中的所有物件。

抽象工廠角色:擔任這個角色的是工廠方法模式的核心,它是與應用系統商業邏輯無關的。

具體工廠角色:這個角色直接在客戶端的呼叫下建立產品的例項。

抽象產品角色:擔任這個角色的類是工廠方法模式所建立的物件的父類,或它們共同擁有的介面。

具體產品角色:抽象工廠模式所建立的任何產品物件都是某乙個具體產品類的例項。

using system;

using system.collections.generic;

using system.text;

namespace ******_factory

///

/// 實體工廠產生實體產品

///

class concreatefactory1 : abstractory

public override abstractproductb createproductb()

}class concretefactory2 : abstractory

public override abstractproductb createproductb()

}///

/// 抽象產品

///

abstract class abstractproducta

abstract class abstractproductb

///

/// 實體產品

///

class producta1 : abstractproducta

class productb1 : abstractproductb

}class producta2 : abstractproducta

class productb2 : abstractproductb

}///

/// 工廠類

///

class environment

public void run()

}class abstract_factory

} }

工廠模式三 抽象工廠模式

抽象工廠模式可以用來生產不同產品族的全部產品。對於新增加的產品,無能為力 但是支援增加產品族 抽象工廠模式其實是工廠方法模式的公升級版本,在有多個業務品種和分類時,通過抽象工廠模式產生需要的物件是一種非常好的解決方案。首先建立發動機引擎的介面與不同層次引擎的實現類 public inte ce en...

三)工廠模式 抽象工廠模式

1 工廠模式介紹建立型設計模式,結構簡單的模式,建立物件的介面,讓子類決定例項化哪個類 2 工廠模式使用場景 在任何需要生成複雜物件的地方,都可以使用,用new就可以生成就無需使用 3 工廠模式的組成 分為四大模組,一是抽象工廠,為工廠方法模式的核心,二是具體工廠,實現具體的業務邏輯,三是抽象產品,...

三 抽象工廠模式

抽象工廠模式可以向客戶端提供乙個介面,使得客戶端在不必指定類例項的具體型別的情況下,能夠建立多個類例項族的類例項物件。public inte ce fruitfactory其中包括公共的抽象角色和具體類的進一步抽象。public inte ce fruitpublic abstract class ...