标签:
定义:
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
实现:
Pizza接口
public interface Pizza
{
/// <summary>
/// 显示pizza信息方法
/// </summary>
void show();
}
具体的Pizza类:
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 class PizzaFactory
{
public static Pizza GetPizza(string type)
{
switch (type)
{
case "Cheese":
return new CheesePizza();
case "Clam":
return new ClamPizza();
default:
throw new Exception("不存在该类型的Pizza");
}
}
}
客户端调用:
class Program
{
static void Main(string[] args)
{
Pizza pizza = PizzaFactory.GetPizza("Clam");
pizza.show();
Console.ReadLine();
}
}
标签:
原文地址:http://www.cnblogs.com/Jabben/p/5516795.html