当前位置: 首页 > news >正文

微信链接网页网站制作安阳企业网站优化排名

微信链接网页网站制作,安阳企业网站优化排名,职业培训机构,购物网站建设需求模板下载文章目录 1. 作业内容2. 设计思路分析与难点3. 代码实现3.1 接口定义3.2 工厂类实现3.3 委托和事件3.4 主函数3.5 代码运行结果 4. 代码地址5. 总结改进思路6. 阅读参考 1. 作业内容 使用 C# 编码#xff08;涉及类、接口、委托等关键知识点#xff09;#xff0c;实现… 文章目录 1. 作业内容2. 设计思路分析与难点3. 代码实现3.1 接口定义3.2 工厂类实现3.3 委托和事件3.4 主函数3.5 代码运行结果 4. 代码地址5. 总结改进思路6. 阅读参考 1. 作业内容 使用 C# 编码涉及类、接口、委托等关键知识点实现对周黑鸭工厂的产品生产统一管理主要产品包括鸭脖和鸭翅。武汉工厂能生生产鸭脖和鸭翅南京工厂只能生产鸭翅长沙工厂只能生产鸭脖。具体要求如下 定义接口 IProductionFactory包含生产鸭脖和鸭翅的方法。定义类 WuhanFactory、NanjingFactory、ChangshaFactory 分别实现接口 IProductionFactory用于具体的生产工厂。使用委托 ProductionDelegate 定义生产委托。在 Main 函数中创建不同工厂的实例并通过生产委托进行生产。 2. 设计思路分析与难点 在面向对象编程中接口定义了方法的规范委托则允许在运行时选择具体的方法执行这两者同时使用使得不同的工厂类可以根据需要实现这些方法增强了程序的灵活性和扩展性提高了代码的动态性。总体上讲该系统的设计围绕接口和委托展开。   如何处理工厂生产能力的差异性是一个较为棘手的问题例如南京工厂无法生产鸭翅。我们需要一种机制来优雅地处理不支持的生产操作。   我们利用接口方法的实现来体现生产能力的差异性在不支持的方法中抛出NotImplementedException异常。这确保了程序在尝试执行不支持的操作时会清楚地报错使得错误处理更加明确。   如图所示   在这里只是简单地抛出异常并且报错并不去继续其他处理。 3. 代码实现 3.1 接口定义 interface IProductionFactory { void ProduceNeck(); void ProduceWing(); }IProductionFactory包含两个方法ProduceNeck() 和 ProduceWing()。这两个方法分别代表生产鸭脖和鸭翅的能力。 3.2 工厂类实现 class WuhanFactory : IProductionFactory {public void ProduceNeck() {Console.WriteLine(Wuhan Factory produce duck neck.);}public void ProduceWing() {Console.WriteLine(Wuhan Factory produce duck wing.);} }class NanjingFactory : IProductionFactory {public void ProduceNeck(){Console.WriteLine(Nanjing Factory produce duck neck.);}public void ProduceWing(){throw new NotImplementedException(Nanjing Factory has no access to produce duck wing!!!);} }class ChangshaFactory : IProductionFactory {public void ProduceNeck(){throw new NotImplementedException(Changsha Factory has no access to produce duck neck!!!);}public void ProduceWing(){Console.WriteLine(Changsha Factory produce duck wing.);} }在这里我们创建了三个工厂类WuhanFactory、NanjingFactory 和 ChangshaFactory每个类都实现了 IProductionFactory 接口。由于不同工厂能够生产的产品不同我们通过用不同方式实现接口方法来体现他们在生产上的差异 若是能够实现生产该类产品则正常输出语句xxx Factory produce duck xxx.若是不能生产该产品则抛出NotImplementedException异常异常信息为xxx Factory has no access to produce duck xxx. 3.3 委托和事件 //定义委托 public delegate void ProductionDelegate();//定义事件 public event ProductionDelegate ExecuteOrder;我们定义了一个名为ProductionDelegate的委托它不带参数且不返回值用于封装生产方法的调用并且定义了事件ExecuteOrder用于记录实现各个工厂的方法。 3.4 主函数 在 Main 方法中我们为每个工厂实例化了相应的生产委托并通过这些委托调用生产方法。 static void Main(string[] args) {//分别为三个工厂类实例化IProductionFactory Wuhan_Factory new WuhanFactory();IProductionFactory Nanjing_Factory new NanjingFactory();IProductionFactory Changsha_Factory new ChangshaFactory();//为每一个工厂都创建一个单独的委托ProductionDelegate wuhanProduction Wuhan_Factory.ProduceNeck;wuhanProduction Wuhan_Factory.ProduceWing;ProductionDelegate nanjingProduction Nanjing_Factory.ProduceNeck;nanjingProduction Nanjing_Factory.ProduceWing;ProductionDelegate changshaProduction Changsha_Factory.ProduceWing;changshaProduction Changsha_Factory.ProduceNeck;Console.WriteLine(Wuhan Factory production:);try{wuhanProduction();}catch (NotImplementedException e){Console.WriteLine(e.Message);}Console.WriteLine(Nanjing Factory production:);try{nanjingProduction();}catch (NotImplementedException e){Console.WriteLine(e.Message);}Console.WriteLine(Changsha Factory production:);try{changshaProduction();}catch (NotImplementedException e){Console.WriteLine(e.Message);}Console.ReadLine();}除此之外还采用try和catch语句块来实现订单的执行对于每个工厂的委托都使用了一个try-catch语句块能够在出现异常的时候及时抛出并且不影响其他工厂的生产。 3.5 代码运行结果 4. 代码地址 代码仓库https://github.com/hmcy-zbx/Windows_homework 5. 总结改进思路 通过本次项目的练习我们展示了如何使用 C# 中的面向对象特性来构建一个简单的实现周黑鸭多工厂生产管理系统。该系统不仅展示了接口、类和委托的使用还体现了面向对象设计原则继承性的应用是一次很好的练习。   在未来还可以使用设计模式对其进行改进利用简单工厂模式或者抽象工厂模式来实现可以使其更加接近实际生产的需求。 6. 阅读参考 C#教程-接口csharp-interface   C#教程-委托BV1TP411R72r   C#教程-事件BV1ou411a7YD   简单工厂模式和抽象工厂模式Graphic Design Patterns
http://www.hkea.cn/news/14295480/

相关文章:

  • 昌图门户网站用家庭宽带做网站
  • 烤漆 东莞网站建设厦门市建设局网站
  • 模板网站建设教程视频教程内网专线和外网专线区别
  • 自己做的网站实现扫码跳转系统设计
  • 单页淘客网站怎么建设网络营销推广方法是什么和什么的合理利用
  • 设计和建设企业网站心得和体会wordpress ide
  • 盐都区城乡建设局网站权威的合肥网站推广
  • 建网站数据库手机品牌排行榜
  • 东莞塘厦网站制作关键词推广优化外包
  • 抑郁症图片加时间生成器在线制作商丘seo快速排名
  • 网站建设技术方案网站官网
  • 网时 网站服务器租赁无限流量网站建设
  • 为什么网站目录不收录做外贸如何分析客户网站
  • 网站 当前时间 代码广州建立网站
  • 网站建设公司止一se0apache php mysql wordpress
  • 网站数据分析wordpress主题 qux
  • 网站系统建设开票要开什么手机自适应网站源码
  • 做炭化料的网站怎么做代理ip网站
  • 石林网站建设专业做网站咨询
  • 北京网站设计公司兴田德润放心文化墙 北京广告公司
  • 网站建设哪些是需要外援的问题平台公司转型
  • asp网站用什么软件建设厅官方网站企业库
  • 假网站怎么做企业网站建设哪家
  • .net如何做网站发布公司信息的网站
  • 网站开发的人员工程业绩在哪个平台上查询
  • 装饰公司网站制作wordpress 图片本地
  • 广州商城型网站手机制作封面教程网站
  • 鞍山企业做网站沈阳定制网站方案
  • 南京网站建设方案宣威网站建设
  • 如何自己建网站服务器大学生做网站类型