策略模式學習

2021-09-13 12:47:31 字數 724 閱讀 4729

策略模式uml:

contexttype1、contexttype2在構造方法或set方法中初始化各自需要的strategytype

策略模式**

/**

* 策略介面

*/public inte***ce strategy

/** * 具體策略a

*/public class strategytypea implements strategy

}/**

* 具體策略b

*/public class strategytypeb implements strategy

}/**

* 上下文抽象類

* 我理解的這個類的作用是:負責策略與使用者(使用者)的連線,也是策略模式的入口

*/public abstractclass context

/*** 策略方法

*/public void contextmethod()

}/**

* 具體環境類

*/public class contexttype1 extends context

}

應用場景: 多個使用者購買不同型號電腦

public class client 

}

學習設計模式 策略模式

以下絕大部分內容 大話設計模式 c 定義演算法家族,分別封裝起來,讓它們之間可以互相替換,讓演算法變化,不會影響到使用者 good 適合類中的成員以方法為主,演算法經常變動 簡化了單元測試 因為每個演算法都有自己的類,可以通過自己的介面單獨測試。策略模式和簡單工廠基本相同,但簡單工模式只能解決物件建...

設計模式學習 策略模式

看完了策略模式的講解,然後將之於之前的簡單工廠模式對比了一下,策略模式就是將具體的演算法變化封裝了一下,可以將兩者結合一起使用,這樣的話封裝度會更加高一點,而且在更改演算法和新增演算法的時候更加方便。大話設計模式 書中是用商場收銀做例子,我將之用簡單工廠模式做了之後,現在把之前的計算例子再拿出來給一...

設計模式學習 策略模式

使用策略模式可以代替多重if else和switch語句,讓 維護變得更加簡單,乍一看跟工廠模式一模一樣,下面是個簡單的例子。策略模式包含以下三種角色 抽象策略角色 定義策略介面 public inte ce weather具體策略角色 實現策略介面 author jhz date 18 10 31...