Partilhar via


Diferenças entre propriedades e variáveis no Visual Basic

Variáveis e propriedades representam valores que você pode acessar. No entanto, existem diferenças no armazenamento e na implementação.

Variáveis

Uma variável corresponde diretamente a um local de memória. Você define uma variável com uma única instrução de declaração. Uma variável pode ser uma variável local, definida dentro de um procedimento e disponível apenas dentro desse procedimento, ou pode ser uma variável membro, definida em um módulo, classe ou estrutura, mas não dentro de qualquer procedimento. Uma variável membro também é chamada de campo.

Propriedades

Uma propriedade é um elemento de dados definido em um módulo, classe ou estrutura. Você define uma propriedade com um bloco de código entre as Property instruções and End Property . O bloco de código contém um Get procedimento, um Set procedimento ou ambos. Esses procedimentos são chamados de procedimentos de propriedade ou acessadores de propriedade. Além de recuperar ou armazenar o valor da propriedade, eles também podem executar ações personalizadas, como atualizar um contador de acesso.

Differences

A tabela a seguir mostra algumas diferenças importantes entre variáveis e propriedades.

Ponto de diferença Variável Property
Declaração Declaração única Série de instruções em um bloco de código
Implementação Local de armazenamento único Código executável (procedimentos de propriedade)
Armazenamento Diretamente associado ao valor da variável Normalmente, tem armazenamento interno não disponível fora da classe ou módulo que contém a propriedade

O valor da propriedade pode ou não existir como um elemento armazenado 1
Código executável Nenhuma Deve ter pelo menos um procedimento
Acesso de leitura e gravação Leitura/gravação ou somente leitura Leitura/gravação, somente leitura ou somente gravação
Ações personalizadas (além de aceitar ou devolver valor) Não é possível Pode ser executado como parte da configuração ou recuperação do valor da propriedade

1 Ao contrário de uma variável, o valor de uma propriedade pode não corresponder diretamente a um único item de armazenamento. O armazenamento pode ser dividido em partes por conveniência ou segurança, ou o valor pode ser armazenado de forma criptografada. Nesses casos, o Get procedimento montaria as peças ou descriptografaria o valor armazenado, e o Set procedimento criptografaria o novo valor ou o dividiria no armazenamento constituinte. Um valor de propriedade pode ser efêmero, como a hora do dia, caso em que o Get procedimento o calcularia rapidamente cada vez que você acessasse a propriedade.

Consulte também