public abstract void visit(Car car);
public override void visit(Car car) { Console.WriteLine("Visiting {0} car", this.CarCount++); }
public override void visit(Car car) { Console.WriteLine("Visiting car"); }