用最简单的例子理解策略模式(Strategy Pattern)

王朝学院·作者佚名  2016-05-17
窄屏简体版  字體: 小  |  中  |  大  |  超大  

用最简单的例子理解策略模式(Strategy Pattern)当一个动作有多种实现方法,在实际使用时,需要根据不同情况选择某个方法执行动作,就可以考虑使用策略模式。

把动作抽象成接口,比如把玩球抽象成接口。

public interface IBall

{

void Play();

}

有可能是玩足球、篮球、排球等,把这些球类抽象成实现接口的类。

public class Football : IBall

{

public void Play()

{

Console.WriteLine("我喜欢足球");

}

}

public class Basketball : IBall

{

public void Play()

{

Console.WriteLine("我喜欢篮球");

}

}

public class Volleyball : IBall

{

public void Play()

{

Console.WriteLine("我喜欢排球");

}

}

还有一个类专门用来选择哪种球类,并执行接口方法。

public class SportsMan

{

PRivate IBall ball;

public void SetHobby(IBall myBall)

{

ball = myBall;

}

public void StartPlay()

{

ball.Play();

}

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航