策略模式(Stratety)
生活随笔
收集整理的这篇文章主要介绍了
策略模式(Stratety)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
namespace StrategyPattern //策略模式 {/// <summary>/// 定义所以支持的算法的公共接口/// </summary>abstract class Strategy{/// <summary>/// 算法方法。/// </summary>public abstract void AlgorithmInrerface();}class ConcreateStratetyA : Strategy{public override void AlgorithmInrerface(){Console.WriteLine("实现算法A"); }}class ConcreateStratetyB : Strategy{public override void AlgorithmInrerface(){Console.WriteLine("实现算法B");}}class ConcreateStratetyC : Strategy{public override void AlgorithmInrerface(){Console.WriteLine("实现算法C");}}/// <summary>/// 用一个ConcreateStratety来配置,来维护一个对Stratety对象的引用。/// </summary>class Context{Strategy stratety;public Context(Strategy stratety)//构造器注入具体的策略对象。 {this.stratety = stratety;}/// <summary>/// 根据具体策略的对象,调用其算法的方法。/// </summary>public void ContextInterface(){stratety.AlgorithmInrerface();}}class Program{static void Main(string[] args){Context context = null;context = new Context(new ConcreateStratetyA());context.ContextInterface();context = new Context(new ConcreateStratetyB());context.ContextInterface();context = new Context(new ConcreateStratetyC());context.ContextInterface();Console.Read();}} }
转载于:https://www.cnblogs.com/longdb/p/7259206.html
总结
以上是生活随笔为你收集整理的策略模式(Stratety)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 二分图入门题
- 下一篇: [BZOJ 1588][HNOI 200