Mega Code Archive

 
Categories / C# / Class Interface
 

Illustrates inheritance

/* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110 */ /*   Example7_1.cs illustrates inheritance */ using System; // declare the MotorVehicle class (the base class) class MotorVehicle {   // declare the fields   public string make;   public string model;   // define a constructor   public MotorVehicle(string make, string model)   {     this.make = make;     this.model = model;   }   // define a method   public void Start()   {     Console.WriteLine(model + " started");   } } // declare the Car class (derived from the MotorVehicle base class) class Car : MotorVehicle {   // declare an additional field   public bool convertible;   // define a constructor   public Car(string make, string model, bool convertible) :   base(make, model)  // calls the base class constructor   {     this.convertible = convertible;   } } // declare the Motorcycle class (derived from the MotorVehicle base class) class Motorcycle : MotorVehicle {   // declare an additional field   public bool sidecar;   // define a constructor   public Motorcycle(string make, string model, bool sidecar) :   base(make, model)  // calls the base class constructor   {     this.sidecar = sidecar;   }   // define an additional method    public void PullWheelie()   {     Console.WriteLine(model + " pulling a wheelie!");   } } public class Example7_1 {   public static void Main()   {     // declare a Car object, display the object's fields, and call the     // Start() method     Car myCar = new Car("Toyota", "MR2", true);     Console.WriteLine("myCar.make = " + myCar.make);     Console.WriteLine("myCar.model = " + myCar.model);     Console.WriteLine("myCar.convertible = " + myCar.convertible);     myCar.Start();     // declare a Motorcycle object, display the object's fields, and call the     // Start() method     Motorcycle myMotorcycle = new Motorcycle("Harley-Davidson", "V-Rod", false);     Console.WriteLine("myMotorcycle.make = " + myMotorcycle.make);     Console.WriteLine("myMotorcycle.model = " + myMotorcycle.model);     Console.WriteLine("myMotorcycle.sidecar = " + myMotorcycle.sidecar);     myMotorcycle.Start();     myMotorcycle.PullWheelie();   } }