using System.Collections.Generic;
using System.Threading.Tasks;
static void Main(string[] args)
vehicle vehicle = new vehicle("BMW", "530i", 2015);
car car = new car(4, 20000, "BMW", "530i", 2015);
Console.WriteLine("\n\n");
vehicle vehicle1 = new vehicle("Ford", "F150", 2012);
car car1 = new car(4, 25000, "Ford", "F150", 2012);
vehicle vehicle2 = new vehicle("Pontiac", "Redbird", 1983);
car car2 = new car(2, 10000, "Pontiac", "Redbird", 1983);
vehicle[] array = { vehicle1, car1, vehicle2, car2 };
foreach (vehicle i in array)
public vehicle(string make, string model, int year)
public void DisplayInfo()
Console.WriteLine($"This is a {year} {make} {model}");
public virtual void start()
Console.WriteLine("The Vehicle is starting");
internal class car : vehicle
public car(int numOfDoors, int price, string make, string model, int year) : base(make, model, year)
this.numOfDoors = numOfDoors;
public void DisplayInfo()
Console.WriteLine($"This is a {year} {make} {model}, has {numOfDoors} doors and is worth {price:C}");
public override void start()
Console.WriteLine($"The {make} {model} is starting");