简单工厂设计模式

简单工厂设计模式的核心,根据用户的输入创建对象赋值给父类
using System;

namespace 工厂设计模式
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入您想要的笔记本品牌");
            string brand = Console.ReadLine() ;
            NoteBook nb = GetNoteBook(brand);
            nb.SayHello();
            Console.ReadKey();
            
        }
        /// <summary>
        ///  简单工厂设计模式的核心,根据用户的输入创建对象赋值给父类
        /// </summary>
        /// <param name="brand"></param>
        /// <returns></returns>
        /// 
        //返回笔记本的父类NoteBOOK,根据用户输入的品牌创建对象
        public static NoteBook GetNoteBook(string brand)
        {
            NoteBook nb = null;
            switch (brand)
            {
                case "Lenovo": nb = new Lenovo();//创建子类的对象赋值给父类
                    break;
                case "IBM":nb = new IBM();
                    break;
                case "Acer":nb = new Acer();
                    break;
                case "Dell":nb = new Dell();
                    break;
            }

            return nb;
        }
        public abstract class NoteBook//所有笔记本的父类
        {
            public abstract void SayHello();
        }

        public class Lenovo : NoteBook
        {
            public override void SayHello()
            {
                Console.WriteLine("联想");
            }
        }

        public class Acer : NoteBook
        {
            public override void SayHello()
            {
                Console.WriteLine("鸿基");
            }
        }

        public class Dell : NoteBook
        {
            public override void SayHello()
            {
                Console.WriteLine("戴尔");
            }
        }

        public class IBM : NoteBook
        {
            public override void SayHello()
            {
                Console.WriteLine("IBM");
            }
        }
    }
}

 

posted @ 2023-02-11 20:11  春哥博客  阅读(20)  评论(0)    收藏  举报