学习TerryLee的设计模式颇有感触,留下以下笔记以作日后参考。
代码
//-----------------------------------------------
//简单工厂不可以称为设计模式中的一种但我们常用到。
//简单工厂将一些经常变换的类提取出来,封装,在客户创建。
//-----------------------------------------------
#region 产品
public interface ICup
{
}
public class ACap : ICup
{ }
public class BCap : ICup
{ }
public class CCup : ICup
{ }
#endregion
#region 工厂
public class CupFactory
{
public ICup CupCreate(string cup)
{
switch (cup)
{
case "A":
return new ACap();
case "B":
return new BCap();
case "C":
return new CCup();
default: throw new Exception();
}
}
}
#endregion
#region 客户端
public class App
{
public static void Main(string[] args)
{
CupFactory factory = new CupFactory();
factory.CupCreate("A");
}
}
#endregion