Compartilhar via


Níveis de acessibilidade (Referência de C#)

Use os modificadores de acesso, pública, protegido, interno, ou particular, para especificar um dos seguintes níveis de acessibilidade declarada de membros.

Acessibilidade declarada

Significado

public

O acesso não é restrito.

protected

O acesso é limitado a classe que contém classes ou tipos derivados da classe que contém.

internal

O acesso é limitado ao conjunto atual.

protected internal

O acesso é limitado ao conjunto atual ou tipos derivados da classe que contém.

private

O acesso é limitado para o tipo de recipiente.

Modificador de acesso somente uma é permitido para um membro ou tipo, exceto quando você usa o protectedinternal combinação. 

Modificadores de acessos não são permitidos em namespaces. Namespaces não têm restrições de acesso.

Dependendo do contexto no qual ocorre uma declaração de membro, somente algumas acessibilidades declaradas são permitidas. Se nenhum modificador de acesso é especificado na declaração de membro, uma acessibilidade padrão é usada.

Tipos de nível superior, que não estão aninhados em outros tipos, só podem ter internal ou public acessibilidade. A acessibilidade padrão para esses tipos for internal.

Tipos aninhados, que são membros de outros tipos, podem ter acessibilidade declarada, conforme indicado na tabela a seguir.

Membros do

Acessibilidade de membro padrão

Acessibilidade declarada permitida dos membros

enum

public

Nenhum

class

private

public

protected

internal

private

protected internal

interface

public

Nenhum

struct

private

public

internal

private

A acessibilidade de um tipo aninhado depende de sua o domínio de acessibilidade, que é determinado pela acessibilidade declarada do membro e o domínio de acessibilidade do tipo imediatamente contido. Entretanto, o domínio de acessibilidade de um tipo aninhado não pode exceder o do tipo contido.

Especificação da linguagem C#

Para obter mais informações, consulte a Especificação da linguagem C#. A especificação da linguagem é a fonte definitiva para a sintaxe e o uso de C#.

Consulte também

Referência

Palavras-chave C#

Modificadores de acesso (Referência de C#)

Domínio de acessibilidade (Referência de C#)

Restrições ao uso de níveis de acessibilidade (Referência de C#)

Modificadores de acesso (Guia de Programação em C#)

public (Referência de C#)

private (Referência de C#)

protected (Referência de C#)

internal (Referência de C#)

Conceitos

Guia de Programação em C#

Outros recursos

Referência de C#