一、簡單工廠模式
簡單工廠模式概述 •
又叫靜態工廠方法模式,它定義乙個具體的工廠類負責建立一些類的例項 優點
•客戶端不需要在負責物件的建立,從而明確了各個類的職責 缺點
•這個靜態工廠類負責所有物件的建立,如果有新的物件增加,或者某些物件的建立方式不同,就需要不斷的修改工廠類,不利於後期的維護
**: //動物類
public abstract class animal
//貓類
public class cat extends animal
}//狗類
public class dog extends animal
}//動物工廠
public class animalfactory
public static animal createanimal(string type) else if ("cat".equals(type)) else }}
//測試類
public class animaldemo else }}
二、工廠方法模式
工廠方法模式概述 •
工廠方法模式中抽象工廠類負責定義建立物件的介面,具體物件的建立工作由繼承抽象工廠的具體類實現。 優點
•客戶端不需要在負責物件的建立,從而明確了各個類的職責,如果有新的物件增加,只需要增加乙個具體的類和具體的工廠類即可,不影響已有的**,後期維護容易,增強了系統的擴充套件性 缺點
•需要額外的編寫**,增加了工作量
//動物類
public abstract class animal
//工廠介面
public inte***ce factory
//貓類
public class cat extends animal
}//狗類
public class dog extends animal
}//貓工廠類
public class cat extends animal
}//狗工廠類
public class dogfactory implements factory
}//測試類
public class animaldemo
}
設計模式(簡單工廠模式 工廠模式 抽象工廠模式)
當邏輯較為簡單時,可以直接建立對應的類。如下 include using namespace std class class banana class pear intmain 通過此 可以發現,使用者直接與客戶接觸,違背了dip 依賴倒轉 原則,過於麻煩,所以引出簡單工廠模式。include us...
設計模式 工廠模式(簡單工廠)
一 簡單工廠 定義 簡單工廠模式 factory pattern 屬於類的創新型模式,又叫靜態工廠方法模式 static factorymethod pattern 是通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。特點 工廠類直接實現,乙個產品介面,乙個工廠類可以產生多...
設計模式 工廠模式之簡單工廠模式
定義 由乙個工廠物件 工廠類 來指定建立某乙個產品類的例項。使用場景 客戶端只需傳入指定的引數即可,工廠類負責建立的物件較少 因為指定了傳入的引數 介面類 本想用iphone命名的,見諒 public inte ce phone實現介面類 public class huaweiphone imple...