public abstract void Interact(AbstractWheels a);
public override void Interact(AbstractWheels a) { Console.WriteLine(this.GetType().Name + " interacts with " + a.GetType().Name); }
// Constructor public CarFactory(AbstractFactory factory) { engine = factory.CreateEngine(); wheels = factory.CreateWeels(); }