码迷,mamicode.com
首页 > 其他好文 > 详细

策略模式

时间:2015-07-27 00:12:14      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

接口不具有实现代码,所以继承接口无法达到代码的复用。这意味着:无论何时你需要修改某个行为,必须往下追踪并在每一个定义此行为的类中修改它。所以适当的时候可以先对接口做一些基础实现。直接实现接口的行为也是一种面向实现编程。

策略模式:定义了算法族,分别封装起来,让他们之间可以互换(实现了相同的接口),此模式让算法的变化独立于使用算法的客户。技术分享

 1 namespace DesignPattern
 2 {
 3     public class Duck
 4     {
 5         public IFlyBehavior IFlyBehavior;
 6         public IQuackBehavior IQuackBehavior;
 7         public Duck(IFlyBehavior fly,IQuackBehavior quack)
 8         {
 9             this.IFlyBehavior = fly;
10             this.IQuackBehavior = quack;
11         }        
12         public void Display()
13         {
14            
15         }
16     }
17 }

OO原则:

1. 封装变化

2. 多用组合少用继承

3. 针对接口编程,不针对实现编程

策略模式

标签:

原文地址:http://www.cnblogs.com/goodlucklzq/p/4678864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!