一、定义
策略模式:定义了一系列的算法,并将每一个算法封装起来,并且这些算法还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。
二、实现代码
下面以烹饪模式的切换(火锅(Hotpot)、煎炸(Fried)、水煮(Boil))为例。
三、测试代码
四、运行结果
五、优缺点
A)优点
可以动态的修改策略类的行为;
B)缺点
策略类越多的话,不好维护,并且调用端需要知道所有的策略类,还需要知道该调用哪一个。
一、定义
策略模式:定义了一系列的算法,并将每一个算法封装起来,并且这些算法还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。
二、实现代码
下面以烹饪模式的切换(火锅(Hotpot)、煎炸(Fried)、水煮(Boil))为例。
三、测试代码
四、运行结果
五、优缺点
A)优点
可以动态的修改策略类的行为;
B)缺点
策略类越多的话,不好维护,并且调用端需要知道所有的策略类,还需要知道该调用哪一个。