设计模式——工厂方法模式
public abstract class Mouse
{
public abstract void Print();
}
public class DellMouse : Mouse
{
public override void Print()
{
Console.WriteLine("生产了一个Dell鼠标!");
}
}
public class HpMouse : Mouse
{
public override void Print()
{
Console.WriteLine("生产了一个惠普鼠标!");
}
}
public abstract class MouseFactory
{
public abstract Mouse CreateMouse();
}
public class DellMouseFactroy : MouseFactory
{
public override Mouse CreateMouse()
{
return new DellMouse();
}
}
public class HpMouseFactory : MouseFactory
{
public override Mouse CreateMouse()
{
return new HpMouse();
}
}
static void Main(string[] args)
{
MouseFactory dellMouseFactory = new DellMouseFactroy();
Mouse dellMouse = dellMouseFactory.CreateMouse();
dellMouse.Print();
MouseFactory hpMouseFactory = new HpMouseFactory();
Mouse hpMouse = hpMouseFactory.CreateMouse();
hpMouse.Print();
}