Access Control - demonstrate the various forms of access control : Access Modifier « Class « C# / CSharp Tutorial






using System;

public class Class1 : Class2 {
    public static void Main(string[] strings) {
        Class1 class1 = new Class1();
        Class2 class2 = new Class2();
        Class3 class3 = new Class3();

        class2.A_public();

        class1.B_protected();
        class1.C_private();

        class3.D_internal();

        class1.E_internalprotected();
        class3.E_internalprotected();

    }

    public void C_private() {
        Console.WriteLine("Class1.C_private");
    }
}

internal class Class3 {
    public void A_public() {
        Console.WriteLine("Class3.A_public");
    }

    protected void B_protected() {
        Console.WriteLine("Class3.B_protected");
    }

    internal void D_internal() {
        Console.WriteLine("Class3.D_internal");
    }

    public void E_internalprotected() {
        Console.WriteLine("Class3.E_internalprotected");
    }
}


public class Class2 {
    public void A_public() {
        Console.WriteLine("Class2.A_public");
    }
    protected void B_protected() {
        Console.WriteLine("Class2.B_protected");
    }
    private void C_private() {
        Console.WriteLine("Class2.C_private");
    }
    internal void D_internal() {
        Console.WriteLine("Class2.D_internal");
    }
    internal protected void E_internalprotected() {
        Console.WriteLine("Class2.E_internalprotected");
    }
}








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.