zoukankan      html  css  js  c++  java
  • 设计模式之笔记--简单工厂模式(Simple Factory)

    简单工厂模式(Simple Factory)

    类图

    描述

    简单工厂:

    一个抽象产品类,可以派生多个具体产品类;
    一个具体工厂类;
    工厂只能创建一个具体产品。

    应用场景

    汽车接口

        public interface ICar
        {
            void Print();
        }

    汽车类

        public class Audi : ICar
        {
            public void Print()
            {
                Console.WriteLine("这是一辆奥迪车.");
            }
        }
    
        public class Benz : ICar
        {
            public void Print()
            {
                Console.WriteLine("这是一辆奔驰车.");
            }
        }

    汽车工厂类

        public class CarFactory
        {
            public string name { get; set; }
    
            /// <summary>
            /// 生产汽车
            /// </summary>
            /// <returns></returns>
            public ICar CreateCar()
            {
                ICar car = null;
                switch (name.ToLower())
                { 
                    case "audi":
                        car = new Audi();
                        break;
                    case "benz":
                        car = new Benz();
                        break;
                }
                return car;
            }
        }

    调用,从配置文件中读取操作符

                string value = ConfigurationManager.AppSettings["simpleFactoryPattern"];
                CarFactory factory = new CarFactory();
                factory.name = value;
                ICar car = factory.CreateCar();
                car.Print();
  • 相关阅读:
    NOI 题库 7084
    NOI 题库 7218
    POJ 2386 题解
    NOI 题库 8465
    NOI 题库 2753
    NOI 题库 1792
    P3709 大爷的字符串题
    初探莫队
    P1026 统计单词题解
    AC自动机小记
  • 原文地址:https://www.cnblogs.com/zhou-yi/p/5311994.html
Copyright © 2011-2022 走看看