public abstract void Interact(AbstractEngineProduct a);
public override void Interact(AbstractEngineProduct a) { Console.WriteLine(a.GetType().Name + " with " + this.GetType().Name); }
// Constructor public Client(AbstractFactory factory) { _abstractChargerProduct = factory.CreateProductChargerProduct(); _abstractEngineProduct = factory.CreateProductEngineProduct(); }