設計模式2之 簡單工廠模式 工廠方法模式

2021-09-10 19:48:46 字數 1316 閱讀 9744

* a:簡單工廠模式概述

* 又叫靜態工廠方法模式,它定義乙個具體的工廠類負責建立一些類的例項

* b:優點

* 客戶端不需要在負責物件的建立,從而明確了各個類的職責

* c:缺點

* 這個靜態工廠類負責所有物件的建立,如果有新的物件增加,或者某些物件的建立方式不同,就需要不斷的修改工廠類,不利於後期的維護

* d:案例演示

* 動物抽象類:public abstract animal

* 具體狗類:public class dog extends animal {}

* 具體貓類:public class cat extends animal {}

* 開始,在測試類中每個具體的內容自己建立物件,但是,建立物件的工作如果比較麻煩,就需要有人專門做這個事情,所以就知道了乙個專門的類來建立物件。

* public class animalfactory

//public static dog createdog()

//public static cat createcat()

//改進

public static animal createanimal(string animalname)

else if(「cat」.equals(animale)) else }} 

* a:工廠方法模式概述

* 工廠方法模式中抽象工廠類負責定義建立物件的介面,具體物件的建立工作由繼承抽象工廠的具體類實現。

* b:優點

* 客戶端不需要在負責物件的建立,從而明確了各個類的職責,如果有新的物件增加,只需要增加乙個具體的類和具體的工廠類即可,不影響已有的**,後期維護容易,增強了系統的擴充套件性

* c:缺點

* 需要額外的編寫**,增加了工作量

* d:案例演示

* 動物抽象類:public abstract animal

工廠介面:public inte***ce factory

具體狗類:public class dog extends animal {}

具體貓類:public class cat extends animal {}

開始,在測試類中每個具體的內容自己建立物件,但是,建立物件的工作如果比較麻煩,就需要有人專門做這個事情,所以就知道了乙個專門的類來建立物件。發現每次修改**太麻煩,用工廠方法改進,針對每乙個具體的實現提供乙個具體工廠。

狗工廠:public class dogfactory implements factory

}貓工廠:public class catfactory implements factory

}  

設計模式之簡單工廠,工廠方法模式

qt暫時斷了,專案上暫時不用。這段時間回顧以前寫的 不忍直視,現在的也好不 去,索性看看設計模式吧,就當練內功了 啦啦。廢話不說上 c 設計乙個簡單的計算器,只實現加減,其他的暫不考慮,namespace my factory private double dnumbera 0 private do...

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

簡單工廠模式並不屬於gof23個經典設計模式,但通常作為23個設計模式的基礎。因為在簡單工廠模式中用於建立例項的方法是static方法,所以它也被稱為static factory method pattern.定義 定義乙個工廠類,它可以根據引數的不同返回不同類的例項,被建立的例項通常都具有共同的父...

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

1 工廠設計模式的作用 將建立者和呼叫者進行分離 我們經常是建立物件之後再呼叫 2 簡單工廠模式,乙個工廠生產很多物件 最常用 3 工廠方法 在簡單工廠的基礎之上更加細分,分為幾個工廠 1 定義電腦介面,依賴倒置原則,即面向介面程式設計 public inte ce computer 2 定義hp和...