Mega Code Archive

 
Categories / C# / Class Interface
 

Illustrates the use of various access modifiers

/* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110 */ /*   Example5_10.cs illustrates the use of various   access modifiers */ // declare the Car class class Car {   // declare the fields   public             string make;   protected internal string model;   internal           string color;   protected          int horsepower = 150;   private            int yearBuilt;   // define the methods   public void SetYearBuilt(int yearBuilt)   {     this.yearBuilt = yearBuilt;   }   public int GetYearBuilt()   {     return yearBuilt;   }   public void Start()   {     System.Console.WriteLine("Starting car ...");     TurnStarterMotor();     System.Console.WriteLine("Car started");   }   private void TurnStarterMotor()   {     System.Console.WriteLine("Turning starter motor ...");   } } public class Example5_10 {   public static void Main()   {     // create a Car object     Car myCar = new Car();     // assign values to the Car object fields     myCar.make = "Toyota";     myCar.model = "MR2";     myCar.color = "black";     // myCar.horsepower = 200;  // protected field not accessible     // myCar.yearBuilt = 1995;  // private field not accessible     // call the SetYearBuilt() method to set the private yearBuilt field     myCar.SetYearBuilt(1995);     // display the values for the Car object fields     System.Console.WriteLine("myCar.make = " + myCar.make);     System.Console.WriteLine("myCar.model = " + myCar.model);     System.Console.WriteLine("myCar.color = " + myCar.color);     // call the GetYearBuilt() method to get the private yearBuilt field     System.Console.WriteLine("myCar.GetYearBuilt() = " + myCar.GetYearBuilt());     // call the Start() method     myCar.Start();     // myCar.TurnStarterMotor();  // private method not accessible   } }