設計模式之工廠模式

2021-07-15 08:38:16 字數 901 閱讀 5741

設計模式之工廠模式

為了提高內聚和松耦合,我們要經常的抽象出一些公共的藉口以形成抽象基類或者介面.我們可以通過宣告乙個指向基類的指標來指向實際的子類來實現,達到了多型的目的.

1>定義建立物件的介面,封裝了物件的建立.   

2>使得具體化類的工作延遲到了子類中. 

1>乙個n多的子類整合自抽象類,我們就得用new ***,客戶程式設計師必須直到實際子類的名稱,如果系統很複雜,那麼就會又衝突的名字  

命名;程式的擴充套件性和維護型就變得很差;  

2>我們不知道父類中具體要例項化哪乙個子類.例如:在a類中要使用b類,b類是乙個抽象父類,在a中並不知道具體要例項化哪乙個b的

子類,但是在a的子類d中可以知道.

1>product.h

class product;

class concreteproduct:public product;

2>product.cpp

#include usingnamespace std;

product::product()

product::~product()

concreteproduct::concreteproduct()

class concretefactory:public factory

4>factory.cpp

#include "factory.h"

#include "product.h"

#include using namespace std;

factory::fatcory()

factory::~fatcory()

concretefactoy::concretefactoy()

設計模式 設計模式之工廠模式

工廠方法模式 建立模式 使用場景?作用?形態?場景 大量類似的實體類 要建立的實體類都是同一本質的東西 披薩 有部分類似功能 準備 烘烤 切法 實現方式不一樣 準備的材料不同 烘烤時間不同 切法不同 將繁瑣複雜的建立類的過程聚集在一起,有序清晰 把具體例項化的過程從客戶 中抽離 作用 1 將建立物件...

c 設計模式 之 工廠模式之 工廠模式

1 uml類圖 實現和依賴關係 實現 sportfactory jeepfactory hatchbackfactory 實現 ifactory 介面 sportcar jeepcar hatchbackcar 實現 icar 介面 依賴 ifactory 依賴 icar sportfactory ...

設計模式 工廠模式之簡單工廠模式

定義 由乙個工廠物件 工廠類 來指定建立某乙個產品類的例項。使用場景 客戶端只需傳入指定的引數即可,工廠類負責建立的物件較少 因為指定了傳入的引數 介面類 本想用iphone命名的,見諒 public inte ce phone實現介面類 public class huaweiphone imple...