时间:2021-05-20
本文以一个简单的实例来说明C#策略模式的实现方法,分享给大家供大家参考。具体实现方法如下:
一般来说,当一个动作有多种实现方法,在实际使用时,需要根据不同情况选择某个方法执行动作,就可以考虑使用策略模式。
把动作抽象成接口,比如把玩球抽象成接口。代码如下:
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(); }}客户端需要让用户作出选择,根据不同的选择实例化具体类:
class Program{ static void Main(string[] args) { IBall ball = null; SportsMan man = new SportsMan(); while (true) { Console.WriteLine("选择你喜欢的球类项目(1=足球, 2=篮球,3=排球)"); string input = Console.ReadLine(); switch (input) { case "1": ball = new Football(); break; case "2": ball = new Basketball(); break; case "3": ball = new Volleyball(); break; } man.SetHobby(ball); man.StartPlay(); } }}程序运行结果如下图所示:
希望本文所述对大家的C#程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了PHP设计模式之策略模式(Strategy)入门与应用。分享给大家供大家参考,具体如下:这个策略模式,意思就是定义一系列算法,把它们一个个封装起来
策略模式(Strategy):它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。策略模式和T
有关淘宝网(电商运营网)店面装修实例教程,我想说的是的是那样的实例教程如今在网络上能够搜到许多,针对初学者来讲根据一些技术专业的实例教程来学习淘宝店面装修是
本文实例讲述了C#实现单件模式的三种常用方法。分享给大家供大家参考。具体分析如下:单件模式是一种设计模式,即保持同时只能创建一个实例,下面列出了C#实现单件模式
策略模式将不同算法的逻辑抽象接口封装到一个类中,通过组合和多态结合的方式来进行不同算法具体的实现。作用策略模式是一种定义一系列算法的方法,Strategy类层次