public static void Main()
    {
        Accessibility ae = new Accessibility();
        DerivedClass  dc = new DerivedClass();

        ae.DisplayAccessibility();
        dc.DisplayAccessibility();
        dc.DisplayDerivedClass();

        // internal member examples
        Console.WriteLine("internal Example: dc.a: {0} dc.w {1} dc.getW(): {2}",
                          dc.a, dc.w, dc.getW());

        // Private member examples
        // Compile error: [ b, x, getX()] is not accessible in this context because it is 'Private'
        //Console.WriteLine("Private example: dc.b: {0} dc.getB(): {1} dc.x: {2} dc.getX(): {3}", _
        //    dc.b, dc.x, dc.getX()) ;

        // Protected members examples
        // Compile error: [y, getY(), c] is not accessible in this context because it is 'Protected'
        // Console.WriteLine("Protected example: dc.y: {0} dc.getY(): {1} dc.c: {2}", dc.y, dc.getY(), dc.c) ;

        Console.WriteLine("Public example: dc.d: {0} dc.z: {1} dc.getZ(): {2}", dc.d, dc.z, dc.getZ());
    }