Pueden ser protegidos de una clase in.NET?

¿Por qué es /no es posible esto?

InformationsquelleAutor Aarsh Thakur | 2009-06-19

4 Comentarios

  1. 73

    Sí, simplemente no se puede hacer de ellos de nivel superior de las clases, deben ser las clases internas

    public class Outer
    {
        protected class Foo
        {
        }
    }

    Esto está bien, esto significa que las clases sólo le permitió ver a los Foo son sub clases de Exterior

    class X 
    {
        //'Outer.Foo' is inaccessible due to its protection level
        private void Flibble(Outer.Foo foo)
        {
        }
    }
    
    class X : Outer
    {
        //fine
        private void Flibble(Outer.Foo foo)
        {
        }
    }

    Tenga en cuenta que usted no puede declarar a cualquier clase exterior como privado, protegido (o interno protegido) en c# desde el modificador de acceso para el exterior a nivel de clases define su visibilidad en relación a otros conjuntos. Específicamente visible dentro de la asamblea sólo (o a los amigos a través de InternalsVisibleTo) o fuera de la asamblea.

    Así, mientras el público interno/identificadores se utilizan aquí para la consistencia realmente el estado en el IL es simplemente «Público» o «no Pública» (como las Reflexión.Emiten indicadores muestran)

  2. 11

    protected visibilidad se utiliza para indicar ‘visibles para las clases derivadas’. Esto tiene sentido en las cosas dentro de una clase, pero normalmente no tiene ningún significado en el nivel de clase.

    La única excepción a esto es una clase interna, donde la visibilidad protegida significa que las clases derivadas se tiene acceso al interior de la clase.

  3. 2

    Sí, no vamos a hacer de ellos de nivel superior de las clases, deben ser las clases internas

    • Esto, literalmente, sólo repite lo que los dos anteriores respuestas declaró.
  4. -1

    Una clase protegida no podría ser definido dentro de un espacio de nombres.Podría ser declarada como una clase anidada. Podría ser instanciado dentro de otras clases anidadas y podría ser heredado por otras clases anidadas y Se pueden heredar de otras clases anidadas.

    Un miembro protegido de una clase padre podría ser consultada por las clases anidadas así como las clases que heredan de la clase padre (Clase Derivada o Niño de la Clase).

    • Esto también sólo repite lo que las respuestas existentes del estado.

Dejar respuesta

Please enter your comment!
Please enter your name here