工厂模式

工厂模式,第1张

概述  1 namespace UnitTestProject1.BaseDesign 2 { 3 4 /// <summary> 5 /// 工厂方法模式要求:尽量使用抽象类或接口来定义就可以达到一个开闭原则 6 /// </summary> 7 [TestClass] 8 public class BaseDesign 9

 

 1 namespace UnitTestProject1.BaseDesign 2 { 3  4     /// <summary> 5     /// 工厂方法模式要求:尽量使用抽象类或接口来定义就可以达到一个开闭原则 6     /// </summary> 7     [TestClass] 8     public class BaseDesign 9     {10         [TestMethod]11         public voID TestMethod1()12         {13             GetAnimalEat(new DogFactoryFactory());14 15             GetAnimalEat(new PigFactoryFactory());16 17             //如果再增加一个AnimalEat不会对现有代码有改动18         }19 20         voID GetAnimalEat(AnimalFactory fa)21         {22             Animal am = fa.GetAnimal();23             am.Eat();24         }25     26     }27     public abstract class Animal28     {29         public abstract voID Eat();30     }31 32     public class Dog : Animal33     {34         public overrIDe voID Eat()35         {36             Console.Writeline("dog eat");37         }38     }39 40     public class Pig : Animal41     {42         public overrIDe voID Eat()43         {44             Console.Writeline("pig eat");45         }46     }47 48     public abstract class AnimalFactory49     {50         public abstract Animal GetAnimal();51     }52 53     public class DogFactoryFactory : AnimalFactory54     {55         public overrIDe Animal GetAnimal()56         {57             return new Dog();58         }59 60     }61     public class PigFactoryFactory : AnimalFactory62     {63         public overrIDe Animal GetAnimal()64         {65             return new Pig();66         }67     }68 }
总结

以上是内存溢出为你收集整理的工厂模式全部内容,希望文章能够帮你解决工厂模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1024395.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存