- using System;
- namespace FactoryMethod
- {
- /// <summary>
- /// MainApp startup class for Structural
- /// Factory Method Design Pattern.
- /// </summary>
- class MainApp
- {
- /// <summary>
- /// Entry point into console application.
- /// </summary>
- static void Main()
- {
- // An array of creators
- Creator[] creators = new Creator[2];
- creators[0] = new KFC_Creator();
- creators[1] = new MD_Creator();
- // Iterate over creators and create products
- foreach (Creator creator in creators)
- {
- Product product = creator.FactoryMethod();
- Console.WriteLine("Created {0}",product.GetType().Name);
- }
- // Wait for user
- Console.ReadKey();
- }
- }
- /// <summary>
- /// The ‘Product‘ abstract class
- /// </summary>
- abstract class Product
- {
- }
- /// <summary>
- /// A ‘ConcreteProduct‘ class
- /// </summary>
- class KFC_Chips : Product
- {
- }
- /// <summary>
- /// A ‘ConcreteProduct‘ class
- /// </summary>
- class MD_Chips : Product
- {
- }
- /// <summary>
- /// The ‘Creator‘ abstract class
- /// </summary>
- abstract class Creator
- {
- public abstract Product FactoryMethod();
- }
Factory Method(工厂方法模式),布布扣,bubuko.com
时间: 2024-10-10 16:10:47