static void Main(string[] args) { IProductFactory pizzaFactory = new PizzaFactory(); IProductFactory toycarFactory = new ToyCarFactory(); WrapFactory wrapFactory = new WrapFactory(); Box box1 = wrapFactory.WrapProduct(pizzaFactory); Box box2 = wrapFactory.WrapProduct(toycarFactory); Console.WriteLine(box1.Product.Name); Console.WriteLine(box2.Product.Name); }
static void Main(string[] args) { PizzaFactory pizzaFactory = new PizzaFactory(); ToyCarFactory toycarFactory = new ToyCarFactory(); WrapFactory wrapFactory = new WrapFactory(); // 间接调用 Box boxA = wrapFactory.WrapBox(pizzaFactory); Box boxB = wrapFactory.WrapBox(toycarFactory); Console.WriteLine(boxA.Prouduct.Name); Console.WriteLine(boxB.Prouduct.Name); Console.ReadKey(); }