The use of various access modifiers : Access Modifier « Class « C# / CSharp Tutorial






class MyClass
{
  public             string publicStringField;
  protected internal string protectedInternalStringField;
  internal           string internalStringField;
  protected          int protectedField = 150;
  private            int privateField;

  public void setPrivateField(int privateField)
  {
    this.privateField = privateField;
  }

  public int getPrivateField()
  {
    return privateField;
  }

  public void Start()
  {
    System.Console.WriteLine("Starting MyClass ...");
    privateMethod();
    System.Console.WriteLine("MyClass started");
  }

  private void privateMethod()
  {
    System.Console.WriteLine("Turning starter motor ...");
  }

}


class MainClass
{
  public static void Main()
  {
    MyClass myMyClass = new MyClass();

    myMyClass.publicStringField = "Toyota";
    myMyClass.protectedInternalStringField = "MR2";
    myMyClass.internalStringField = "black";

    myMyClass.setPrivateField(1995);

    System.Console.WriteLine("myMyClass.publicStringField = " + myMyClass.publicStringField);
    System.Console.WriteLine("myMyClass.protectedInternalStringField = " + myMyClass.protectedInternalStringField);
    System.Console.WriteLine("myMyClass.internalStringField = " + myMyClass.internalStringField);

    System.Console.WriteLine("myMyClass.getPrivateField() = " + myMyClass.getPrivateField());

    myMyClass.Start();
  }
}
myMyClass.publicStringField = Toyota
myMyClass.protectedInternalStringField = MR2
myMyClass.internalStringField = black
myMyClass.getPrivateField() = 1995
Starting MyClass ...
Turning starter motor ...
MyClass started








7.15.Access Modifier
7.15.1.C#'s Access Specifiers
7.15.2.The use of various access modifiers
7.15.3.Access Control - demonstrate the various forms of access control
7.15.4.Visibility modifiers indicate which other code items can view an item.