标签:dirver Driver 代理 State CarProxy 请勿 new 饮酒 public
行车不规范,情人两行泪!
代理模式:
public interface ICar { void Driver(); } public class Car : ICar { public void Driver() { Console.WriteLine("Car is running"); } } public enum State { Normal,//正常 Fatigue,//疲劳 drinking //饮酒 } public record Dirver(string Name , int Age, State state); public class CarProxy : ICar { private Dirver dirver; public CarProxy(Dirver dirver) { this.dirver = dirver; } public void Driver() { switch (dirver.state) { case State.Normal: new Car().Driver(); break; case State.Fatigue: Console.WriteLine($"Stop the Car!Name:{dirver.Name},Age:{dirver.Age} Please do not drive tired!!!"); break; case State.drinking: Console.WriteLine($"Police!!!Name:{dirver.Name},Age:{dirver.Age} Warning!Don't drive after drinking!!!"); break; default: break; } } } class Program { static void Main(string[] args) { var dirver1 = new Dirver("Mr.Zhang", 17, State.drinking); var dirver2 = new Dirver("Mr.Wang", 18, State.Normal); var dirver3 = new Dirver("Mr.Fang", 19, State.Fatigue); CarProxy carProxy = new CarProxy(dirver1); carProxy.Driver(); carProxy = new CarProxy(dirver2); carProxy.Driver(); carProxy = new CarProxy(dirver3); carProxy.Driver(); } }
标签:dirver,Driver,代理,State,CarProxy,请勿,new,饮酒,public 来源: https://www.cnblogs.com/Zingu/p/16291912.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。