static void Main(string[] args) { IList <IEngine> vEngines = new List <IEngine>(); vEngines.Add(new StandardEngine(1300)); vEngines.Add(new StandardEngine(1600)); vEngines.Add(new TurboEngine(2000)); SuperGreenEngine vSuperGreenEngine = new SuperGreenEngine(2500); vEngines.Add(new SuperGreenEngineAdapter(vSuperGreenEngine)); foreach (IEngine vEngine in vEngines) { WriteLine(vEngine); } ReadKey(); }
public void GreenEngineTest() { IList <IEngine> engines = new List <IEngine>(); engines.Add(new StandardEngine(1300)); engines.Add(new StandardEngine(1600)); engines.Add(new TurboEngine(2000)); SuperGreenEngine greenEngine = new SuperGreenEngine(1200); engines.Add(new SuperGreenEngineAdapter(greenEngine)); foreach (var engine in engines) { System.Console.WriteLine(engine); } }
public static void Main() { IList<IEngine> engines = new List<IEngine>(); engines.Add(new StandardEngine(1300)); engines.Add(new StandardEngine(1600)); engines.Add(new TurboEngine(2000)); // Adapt the new engine type SuperGreenEngine greenEngine = new SuperGreenEngine(1200); engines.Add(new SuperGreenEngineAdapter(greenEngine)); foreach (var engine in engines) { Console.WriteLine(engine); } Console.Read(); }
private SuperGreenEngine greenEngine; // class adapting from #endregion Fields #region Constructors // pass to superclass ctor public SuperGreenEngineAdapter(SuperGreenEngine greenEngine) : base(greenEngine.EngineSize, false) { this.greenEngine = greenEngine; }