简单工厂模式

简单工厂模式(静态工厂模式)

特点:一个工厂返回一种类型的实例

优缺点:
 1、工厂类内部逻辑负责创建相应的对象,体现了职责单一
        2、工厂类负责的逻辑,如果出了问题将致使系统瘫痪
  3、系统扩展困难

示例代码:
namespace OOAD_Factory
{
    public abstract class Book
    {
        private double price;
        public double Price { get { return price; } set { price = value; } }

        public static Book CreateBook(string Key)
        {

            if (Key == "科技")
            {
                return new KJ();
            }
            else { return new GS(); }

        }


    }

 

    public class KJ : Book
    {
        public KJ() { this.Price = 1000.0; }
    }

    public class GS : Book
    {
        public GS()
        {
            this.Price = 10.2;
        }
    }
}


   public Form1()
        {
            InitializeComponent();

            IFood bd = Factory.CreateFood("包子");
            label2.Text = bd.Price.ToString();

            Book b = Book.CreateBook("科技");
            label2.Text = b.Price.ToString();


        }

posted @ 2010-11-07 13:07  星空有我  阅读(224)  评论(0编辑  收藏  举报