簡單工廠:
簡單工廠處理的是如何選擇我們override的虛方法。
public virtualdouble getresult()
double result=0;
return result;
不一定是虛方法,抽象方法也可以:
abstract classcashsuper
public abstract doubleacceptcash(double money);
父類,虛方法和子類,具體方法——為第一篇:虛方法的**
呼叫工廠:
class program
static void main(string args)
tryoperate op=new operate ();
console.writeline("輸入運算子");
//此處op重新賦值,屬性值也重新賦值
op= factory.setoperate(console.readline());
console.writeline("輸入數字1");
op.num1 =convert.todouble(console.readline());
console.writeline("輸入數字2");
op.num2 = convert.todouble(console.readline());
console.writeline(op.getresult());
catch (exception ex)
console.writeline("錯誤:"+ex.message );
console.readkey();
工廠類:
class factory
public static operate setoperate(string operate)
operate oper = null;
switch (operate)
case "+":
oper=new operateadd();
break;
return oper;
設計模式(二) 工廠模式(簡單工廠)
我們在學習乙個東西之前,應該要先了解下他為什麼出現,他解決了什麼問題。這樣才可以帶著思考的高效學習。以資料庫為例,我們知道常見的關係型資料庫有mysql sqlserver oracle等,每種資料庫連線例項的建立都是複雜且易錯麻煩的。如果將這些連線例項交給使用者來建立,是十分不合適的。我們就希望有...
工廠三兄弟之簡單工廠模式(二)
簡單工廠模式並不屬於gof 23個經典設計模式,但通常將它作為學習其他工廠模式的基礎,它的設計思想很簡單,其基本流程如下 首先將需要建立的各種不同物件 例如各種不同的chart物件 的相關 封裝到不同的類中,這些類稱為具體產品類,而將它們公共的 進行抽象和提取後封裝在乙個抽象產品類中,每乙個具體產品...
工廠模式之二 工廠模式 彌補簡單工廠模式弊端
首先回顧下簡單工廠模式的主要內容 簡單工廠模式就是實質就是專門定義了乙個工廠類,利用工廠類的靜態方法來根據使用者需求建立物件,優點是客戶端的壓力較小,客戶端不需要做建立例項的操作,只需要呼叫工廠類中的方法就可以獲得對應例項,而其缺點也非常明顯,其所有建立工作都在乙個工廠類完成,耦合性較高,而且當系統...