Modificadores de acesso são as palavras-chave usadas para especificar a acessibilidade da declaração de um membro ou um tipo.
Ok, já sabemos o que são os modificadores de acesso, agora vamos ver quantos são e para que servem cada:
Lembrando que os modificadores de acesso são aplicáveis a atributos, classes, métodos, Structs, interfaces e enumeradores.
Temos cinco níveis de acessibilidade especificados aos modificadores de acesso. Vejamos cada um, em uma situação hipotética, usando-os em classes:
·Public – Com este modificador, o acesso é livre em qualquer lugar do programa.
·Private – Com este modificador, o acesso é permitido somente dentro da classe onde ele foi declarado. Por padrão, é a visibilidade definida para métodos e atributos em uma classe.
·Protected – Com este modificador, apenas a classe que contém o modificador e os tipos derivados dessa classe tem o acesso.
·Internal – Com este modificador, o acesso é limitado apenas ao assembly atual.
·Protected Internal – Com este modificador, o acesso é limitado ao assembly atual e aos tipos derivados da classe que contém o modificador.
fonte: Conceitos e Exemplos – Modificadores de Acesso: Estrutura da Linguagem http://www.devmedia.com.br/conceitos-e-exemplos-modificadores-de-acesso-estrutura-da-linguagem/18697#ixzz3bNIMGkXu