杞人忧天上掉下个林妹妹

穿越旷野的妹妹啊,慢些走;请不要用你的沉默告诉我,你不回头!

导航

FactoryMethod 工厂方法(创建模型)

定义一个用于创建对象的接口,让子类决定实例化哪能一个类。Factory Method使得一个类的实例化延迟到子类。


Factory Method 模式的几个要点
1、Factory Method 模式主要用于隔离类对象的使用都和具体类型之间的耦合关系。面对一个经常变化的具体类型,紧耦合关系会导致软件的脆弱。
2、Factory Method 模式通过面向对象的手法,将所要创建的具体对象工作延迟到子类,从而实现一种扩展(而非更改)的策略,较好地解决了这种紧耦合关系。
3、Factory Method 模式解决“系统对象”的需求变化,Builder模式解决“对象部分”的需求变化。




 //===========================================================================================
 //AbstractCar.cs
 abstract class AbstractCar
 {
  public abstract void Startup();
  public abstract void Run();
  public abstract void Trun(Direction direction);
  public abstract void Stop();
 }
 //===========================================================================================
 //HongQiCar.cs

 class HongQiCar : AbstractCar
 {
  Enginee enginee1;
  Enginee enginee2;
  Enginee enginee3;
  Enginee enginee4;
  public override void Startup()
  {
   //....
  }
  public override void Run()
  {
   //....
  }
  public override void Trun(Direction direction)
  {
   //....
  }
  public override void Stop()
  {
   //....
  }
 }
 //===========================================================================================
 //CarFactory.cs
 abstract class CarFactory
 {
  public abstract AbstractCar CreateCar();
 }
 //===========================================================================================
 //HongQiCarFactory.cs
 class HongQiCarFactory : CarFactory
 {
  public override AbstractCar CreateCar()
  {
   return(new HongQiCar());
  }
 }

posted on 2007-04-07 12:17  杞人  阅读(284)  评论(0编辑  收藏  举报