總結簡單工廠設計模式就是為了能夠根據不同情況動態獲取到需要的型別
在本次將會演示乙個計算器的功能
我們無法知道使用者在程式中會輸入哪些字元,是±*/或者其他,但是我們能確定的是使用者需要通過輸入將兩個值進行運算,得到乙個返回結果。
那麼在此處我們就可以建立乙個演算法基類,有設定值並計算後返回值的方法,值1與值2兩變數。
然後加減乘除類繼承該類,在執行程式時根據使用者輸入去確定到底使用哪個類進行計算即可。
該類只包含乙個方法就是乙個演算法必須包含的計算並返回值
public
abstract
class
operation
}
#實現加法的需求
class
operationadd
:operation
}
#實現減法的需求
class
operationsub
:operation
}
根據不同的輸入尋找不同的算法子類,計算出結果
public
static
void
run(
) console.
writeline
(operation.
getresult
(num1,num2));
console.
readline()
;}
我們在工作中可能會遇到各種各樣的需求,就像乙個工廠需要生產不同的電腦,雖然電腦不同但是他們都有乙個父類即電腦類,之後我們只需要關心什麼時候生產什麼電腦即可。 設計模式 1 簡單工廠模式
簡單工廠模式屬於建立型的設計模式,其特點是使用乙個工廠生產所有的類物件,通過在工廠類中進行判斷,然後建立需要的功能類。優點 不必使用具體的功能類去建立該類的例項。缺點 新增乙個功能類就需要在工廠類中增加乙個判斷。此處利用 這4個operation來生成不同的operation物件來說明簡單工廠模式。...
設計模式(1) 簡單工廠模式
例項化物件的時候不再使用 new object 形式,可以根據使用者的選擇條件來例項化相關的類。對於客戶端來說,去除了具體的類的依賴。只需要給出具體例項的描述給工廠,工廠就會自動返回具體的例項物件。todo classname operation description 運算類 public cla...
設計模式1 簡單工廠模式
1 規範性 命名規範 邏輯強 無明顯bug 無冗餘判斷 eg 多個並列if用else if或switch case替代 2 物件導向 易維護 可復用 可擴充套件 靈活性好 3 物件導向三大特性 封裝 繼承 多型,合理使用將顯著降低程式的耦合度 4 封裝 業務邏輯 eg 計算器的計算功能 和介面邏輯 ...