实例化具有相同基类的一组对象,允许创建子类Creator来决定实例哪个对象Product。
参与:
1)Product:interface
2)Concrete Product: derived Product class
3)Creator:Abstract class
4)Concrete Creator: derived Creator class
Interface IProduct {string GetName()};
public class Prouct A : IProduct
{
public string GetName() {return "this is Product A";}
}
abstract class Creator
{
public abstract IProduct GetObject();
}
public class CreatorA : Creator
{
public override IProduct GetObject()
{
return new ProductA();
}
}