Esempio n. 1
0
        public static XiaomiMobile CreateXioamiMobile(string model, string processor, int ram)
        {
            string name   = "Xioami";
            var    mobile = new XiaomiMobile(name, model, processor, ram);

            OnMobileCreated(mobile);
            return(mobile);
        }
        /// <summary>
        /// 静态工厂方法=>根据手机类型生成手机
        /// </summary>
        /// <param name="mobiletype">手机类型</param>
        /// <returns>手机</returns>
        public static Mobile product(String mobiletype)
        {
            Mobile mobile = null;

            if ("xiaomi".Equals(mobiletype))
            {
                mobile = new XiaomiMobile();
                Console.WriteLine("生产小米手机.");
            }
            else if ("huawei".Equals(mobiletype))
            {
                mobile = new HuaweiMobile();
                Console.WriteLine("生产华为手机.");
            }
            else
            {
                Console.WriteLine("不能生产该手机类型.");
            }
            return(mobile);
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            // Singleton usage example
            GameManager.Instance.LoadLevel(1);
            GameManager.Instance.NumberOfEnemies = 5;
            while (GameManager.Instance.NumberOfEnemies > 0)
            {
                GameManager.Instance.NumberOfEnemies--;
                Console.WriteLine("Killing one enemy! Remaining {0}", GameManager.Instance.NumberOfEnemies);
                GameManager.Instance.Score += 10;
                Thread.Sleep(200);
                if (GameManager.Instance.NumberOfEnemies == 0)
                {
                    GameManager.Instance.GameWin();
                }
            }

            Console.WriteLine("\nFactory Example:\n");
            // Factory example
            SamsungMobile samsung = MobileFactory.CreateSamsungMobile(model: "S10+", processor: "845", ram: 8192);
            XiaomiMobile  xiaomi  = MobileFactory.CreateXioamiMobile(model: "Mi Mix 3", processor: "855", ram: 6144);

            Console.ReadKey();
        }