大話設計模式二 策略模式(商場促銷)

2021-06-18 05:23:27 字數 689 閱讀 8352

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

應用案例:商場**的多樣性(折扣,滿減,積分)

package strategy;

abstract class cashsuper

class cashnormal extends cashsuper

}class cashrebate extends cashsuper

@override

public double acceptcash(double money)

}class cashreturn extends cashsuper

@override

public double acceptcash(double money)

return result; }}

public class cashcontext

} public double getresult(double money)

public static void main(string args)

}

策略模式就是用來封裝演算法的,在實踐中,我們發現可以用來封裝幾乎任何型別的規則,只要在分析中聽到需要在不同時間應用不同的業務規則,就可以考慮使用策略模式處理這種變化的可能性。

讀《大話設計模式》 商場促銷 策略模式

題目 做乙個商場收銀軟體,營業員根據客戶所購買商品的單價和數量,向客戶收費。方案一 用兩個文字框來輸入單價和數量,乙個確定按鈕來算出每種商品的費用,用個列表框來記錄商品的清單,乙個標籤來記錄總計,還需要乙個重置按鈕來重新開始。商場收銀系統v1.0關鍵 double total 0.0d privat...

商場促銷 策略模式(設計模式)

商場收銀時,如何 用打折還是返利,其實都是一些演算法,用工廠來生成演算法物件,這沒有錯,但演算法本身只是一種策略,最重要的是這些演算法是隨時都可能互相替換的,就這點變化,而封裝變化點是我們物件導向的一種很重要的思維方式。來看看策略模式的結構圖和基本 策略模式 strategy 定義了演算法家族,分別...

策略模式 商場促銷

封裝的簡單策略類 ifndef stratege h define stratege h include using namespace std class stratege class concretestrategea public stratege class concretestratege...