Bookcold

导航

设计模式——简单工厂(Simple Factory)

一、简单工厂(Simple Factory)模式

Simple Factory模式根据提供给它的数据,返回几个可能类中的一个类的实例。通常它返回的类都有一个公共的父类和公共的方法。

二、 Simple Factory模式角色与结构:

工厂类角色:工厂类在客户端的直接控制下(Create方法)创建产品对象。 抽象产品角色:定义简单工厂创建的对象的父类或它们共同拥有的接口。可以是一个类、抽象类或接口。 具体产品角色:定义工厂具体加工出的对象。

三、示例代码

最简单的工厂类:

public enum Category { A, B } public static class SimpleFactoryWithPara { public static IProduct Create(Category category) { switch (category) { case Category.A: return new ConcreteProductA(); case Category.B: return new ConcreteProductB(); default: throw new NotSupportedException(); } } }

测试代码:

[...]

posted on 2010-04-21 21:30  bookcold  阅读(126)  评论(0)    收藏  举报