【学习历程03】简单工厂模式

Posted on 2020-07-09 22:41  NCY_1991  阅读(87)  评论(0编辑  收藏  举报
class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入您想要的笔记本电脑");
            string str = Console.ReadLine();
            Getcomputer(str).SayHello();
        }

        //简单工厂模式:
        //           根据用户的输入,返回一个父类。
        //           父类中装有子类的对象,通过抽象类实现子类的行为。
        //
        public static Computer Getcomputer(string str)
        {
            Computer pc = null;
            switch (str)
            {
                case "acer": pc = new acer();
                    break;
                case "dell": pc = new dell();
                    break;
                default:
                    break;
            }
            return pc;

        }
    }

    public abstract class Computer
    {
        public abstract void SayHello();
    }

    public class acer : Computer
    {

        public override void SayHello()
        {
            Console.WriteLine("我是弘基"); ;
        }
    }

    public class dell : Computer
    {
        public override void SayHello()
        {
            Console.WriteLine("我是戴尔"); ;
        }
    }