illustrates member hiding : Class Access Modifiers « Class Interface « C# / C Sharp






illustrates member hiding

illustrates member hiding
/*
Mastering Visual C# .NET
by Jason Price, Mike Gunderloy

Publisher: Sybex;
ISBN: 0782129110
*/
/*
  Example7_4.cs illustrates member hiding
*/

using System;


// declare the MotorVehicle class
class MotorVehicle
{

  // declare the fields
  public string make;
  public string model;

  // define a constructor
  public MotorVehicle(string make, string model)
  {
    Console.WriteLine("In MotorVehicle constructor");
    this.make = make;
    this.model = model;
    Console.WriteLine("this.make = " + this.make);
    Console.WriteLine("this.model = " + this.model);
  }

  // define the DisplayModel() method
  public void DisplayModel()
  {
    Console.WriteLine("In MotorVehicle DisplayModel() method");
    Console.WriteLine("model = " + model);
  }

}


// declare the Car class (derived from MotorVehicle)
class Car : MotorVehicle
{

  // hide the base class model field
  public new string model;

  // define a constructor
  public Car(string make, string model) :
  base(make, "Test")
  {
    Console.WriteLine("In Car constructor");
    this.model = model;
    Console.WriteLine("this.model = " + this.model);
  }

  // hide the base class DisplayModel() method
  public new void DisplayModel()
  {
    Console.WriteLine("In Car DisplayModel() method");
    Console.WriteLine("model = " + model);
    base.DisplayModel();  // calls DisplayModel() in the base class
  }

}


public class Example7_4
{

  public static void Main()
  {

    // create a Car object
    Console.WriteLine("Creating a Car object");
    Car myCar = new Car("Toyota", "MR2");

    Console.WriteLine("Back in Main() method");
    Console.WriteLine("myCar.make = " + myCar.make);
    Console.WriteLine("myCar.model = " + myCar.model);

    // call the Car object's DisplayModel() method
    Console.WriteLine("Calling myCar.DisplayModel()");
    myCar.DisplayModel();

  }

}


           
       








Related examples in the same category

1.Using Access Modifiers
2.Member Accessibility
3.Member Hiding
4.Demonstrate protectedDemonstrate protected
5.Public vs private accessPublic vs private access
6.illustrates member accessibilityillustrates member accessibility
7.Illustrates the use of various access modifiersIllustrates the use of various access modifiers