大話設計模式 簡單工廠模式與策略模式

2021-09-30 05:50:53 字數 1242 閱讀 4833

簡單工廠模式:

/// 運算類工廠

///

public class operationfactory

case "-":

case "*":

case "/":

case "sqr":

case "sqrt":

case "+/-": }

return oper; } }

關聯關係**如下:

class penguin : bird

private climate climate;

聚合關係如下:

class widegooseaggregate

private widegoose arraywidegoose;

合成(組合)關係如下:

class bird

private wing wing;

public bird()

wing = new wing();

依賴關係如下:

abstract class animal

public metabolism(oxygen oxygen, water water)

策略模式:定義了演算法家族,分別封裝起來,讓它們之間可以互相替換,此模式讓演算法的變化不會影響到使用演算法的客戶。

策略模式的一般**如下:

using system;

using system.collections.generic;

using system.text;

namespace 策略模式 }

//抽象演算法類

abstract class strategy

//具體演算法a

class concretestrategya : strategy }

//具體演算法b

class concretestrategyb : strategy }

//具體演算法c

class concretestrategyc : strategy }

//上下文

class context

//上下文介面

public void contextinte***ce() }

大話設計模式(二)策略模式 簡單工廠

定義了演算法,分別封裝起來,讓他們之間可以相互替換,此模式讓演算法的變化不會影響到使用演算法的使用者 定義乙個抽象的父類,包含乙個抽象的演算法amethod public abstract class strategy a類用a的實現去實現演算法a public class concretestra...

大話設計模式 工廠模式 策略模式

工廠模式 以商場收費系統為例。打折 正常 送積分等手段 首先,有乙個抽象類cashsuper 收費操作,有三個繼承cashsuper的子類 cashnormal具體操作,重寫函式 其次,寫乙個cashfactory工廠類,來生產具體的操作類cashnormal等。策略模式 先寫乙個策略抽象類,然後寫...

大話設計模式 簡單工廠模式

學習c 1年的菜鳥,開始學習設計模式,學過了留下痕跡,歡迎一起談論學習。該模式總結 利用多型例項化不同的物件。include stdafx.h include include using namespace std class operate operate void setnumber1 int ...