static void Main(string[] args) { //简单工厂模式 var whiteHuman1 = SimpleFactory.CreateHuman(HumanEnum.White); var blackHuman1 = SimpleFactory.CreateHuman(HumanEnum.Black); whiteHuman1.Talk(); blackHuman1.Talk(); //工厂模式 var iWhiteHumanFactory = new WhiteHumanFactory(); var whiteHuman2 = iWhiteHumanFactory.CreateHuman(); whiteHuman2.Talk(); var iBlackHumanFactory = new BlackHumanFactory(); var blackHuman2 = iBlackHumanFactory.CreateHuman(); blackHuman2.Talk(); Console.ReadKey(); }
private static void AbstractFactoryTest() { Console.WriteLine("AbstractFactory test"); Console.WriteLine(new string('*', 20)); Console.WriteLine("Create White human:"); var hummanWhite = new WhiteHumanFactory().CreateHuman(); hummanWhite.GetColor(); hummanWhite.Talk(); Console.WriteLine(new string('*', 20)); Console.WriteLine("Create Yellow human:"); var hummanYellow = new YellowHumanFactory().CreateHuman(); hummanYellow.GetColor(); hummanYellow.Talk(); Console.WriteLine(new string('*', 20)); Console.WriteLine("Create Black human:"); var hummanBlack = new BlackHumanFactory().CreateHuman(); hummanBlack.GetColor(); hummanBlack.Talk(); }