码迷,mamicode.com
首页 > 其他好文 > 详细

工厂方法模式

时间:2016-05-22 16:45:53      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:

定义

定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使个类的实例化延迟到其子类。

实现

Pizza接口及具体类

    public interface Pizza
    {
        /// <summary>
        /// 显示pizza信息方法
        /// </summary>
        void show();
    }
    public class CheesePizza : Pizza
    {
        /// <summary>
        /// 显示pizza信息方法
        /// </summary>
        public void show()
        {
            Console.WriteLine("Cheese");
        }
    }
    public class ClamPizza : Pizza
    {
        /// <summary>
        /// 显示pizza信息方法
        /// </summary>
        public void show()
        {
            Console.WriteLine("Clam");
        }
    }

工厂接口及具体类

    public interface PizzaFactory
    {
        Pizza GetPizza();
    }
    public class CheesePizzaFactory : PizzaFactory
    {
        public Pizza GetPizza()
        {
            return new CheesePizza();
        }
    }
    public class ClamPizzaFactory : PizzaFactory
    {
        public Pizza GetPizza()
        {
            return new ClamPizza();
        }
    }

客户端调用

        static void Main(string[] args)
        {
            //根据需求实例化具体的PizzaFactory对象
            PizzaFactory pizzaFactory = new CheesePizzaFactory();
            Pizza pizza = pizzaFactory.GetPizza();
            pizza.show();
            Console.ReadLine();
        }

  

 

工厂方法模式

标签:

原文地址:http://www.cnblogs.com/Jabben/p/5516870.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!