Escolar Documentos
Profissional Documentos
Cultura Documentos
Um campo é uma variável de qualquer tipo que é declarada diretamente em uma classe
ou struct. Os campos são membros do tipo que os contém.
Uma classe ou um struct podem ter campos de instância, campos estáticos ou ambos.
Os campos de instância são específicos a uma instância de um tipo. Se você tem uma
classe T, com um campo de instância F, você pode criar dois objetos do tipo T e
modificar o valor de F em cada objeto sem afetar o valor no outro objeto. Por outro
lado, um campo estático pertence à própria classe e é compartilhado entre todas as
instâncias dessa classe. As alterações feitas na instância A serão imediatamente visíveis
para as instâncias B e C se elas acessarem o campo.
Em geral, você só deve usar campos para variáveis que têm acessibilidade particular ou
protegida. Os dados que a classe expõe para o código de cliente devem ser fornecidos
por meio de métodos, propriedades e indexadores. Usando esses constructos para
acesso indireto aos campos internos, você pode proteger contra valores de entrada
inválidos. Um campo particular que armazena os dados expostos por uma propriedade
pública é chamado de repositório de backup ou de campo de suporte.
C# = Copiar
https://docs.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/fields 1/4
22/09/2019 Campos – Guia de Programação em C# | Microsoft Docs
// private field
private DateTime date;
}
}
https://docs.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/fields 2/4
22/09/2019 Campos – Guia de Programação em C# | Microsoft Docs
C# = Copiar
C# = Copiar
7 Observação
Os campos podem ser marcados como public, private, protected, internal, protected
internal ou private protected. Esses modificadores de acesso definem como os usuários
da classe podem acessar os campos. Para obter mais informações, consulte
Modificadores de Acesso.
Opcionalmente, um campo pode ser declarado static. Isso torna o campo disponível
para chamadores a qualquer momento, mesmo se não existir nenhuma instância da
classe. Para obter mais informações, consulte Classes estáticas e membros de classes
estáticas.
Um campo pode ser declarado readonly. Um valor só pode ser atribuído a um campo
somente leitura durante a inicialização ou em um construtor. Um campo static
readonly é muito semelhante a uma constante, exceto que o compilador C# não tem
https://docs.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/fields 3/4
22/09/2019 Campos – Guia de Programação em C# | Microsoft Docs
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
Guia de Programação em C#
Classes e Structs
Usando construtores
Herança
Modificadores de acesso
Classes e membros de classes abstract e sealed
Sim Não
https://docs.microsoft.com/pt-br/dotnet/csharp/programming-guide/classes-and-structs/fields 4/4