策略模式(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)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二分图入门题
- 下一篇: MySQL关于check约束无效的解决办