/// <summary> /// 原型管理器 /// </summary> static void PrototypeManager() { Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); //创建原型管理器 PrototypeManager prototypeManager = new PrototypeManager(); stopwatch.Stop(); Console.WriteLine($"原型管理器{Environment.NewLine}-------------------------------------------"); Console.WriteLine($"Load用时:{stopwatch.Elapsed.TotalMilliseconds}ms"); stopwatch.Restart(); //创建实例 Kit kit = prototypeManager.CreateInstance("LogitechKit") as Kit; stopwatch.Stop(); Console.WriteLine($"CreateInstance用时:{stopwatch.Elapsed.TotalMilliseconds}ms"); Console.WriteLine($"当前套装内的鼠标是:{kit.Mouse.GetBrand()}"); Console.WriteLine($"当前套装内的键盘是:{kit.Keyboard.GetBrand()}"); //创建原型并添加至原型管理器 Kit razeKit = new Kit(); razeKit.Mouse = new RazeMouse(); razeKit.Keyboard = new RazeKeyboard(); prototypeManager.AddPrototype("RazeKit", razeKit); Console.ReadKey(); }