Propriedades (Guia de Programação em C#)

Uma propriedade é um membro que fornece um mecanismo flexível para ler, gravar ou calcular o valor de um campo particular. Propriedades podem ser usadas como se eles são membros de dados públicos, mas são métodos realmente especiais chamados acessadores. Isso permite que os dados sejam acessados com facilidade e ainda ajuda a promover a segurança e a flexibilidade dos métodos.

Neste exemplo, o TimePeriod classe armazena um período de tempo. Internamente a classe armazena o tempo em segundos, mas uma propriedade chamada Hours permite que um cliente especificar um horário em horas. Os acessadores para o Hours propriedade executar a conversão entre as horas e os segundos.

Exemplo

class TimePeriod
{
    private double seconds;

    public double Hours
    {
        get { return seconds / 3600; }
        set { seconds = value * 3600; }
    }
}


class Program
{
    static void Main()
    {
        TimePeriod t = new TimePeriod();

        // Assigning the Hours property causes the 'set' accessor to be called.
        t.Hours = 24;

        // Evaluating the Hours property causes the 'get' accessor to be called.
        System.Console.WriteLine("Time in hours: " + t.Hours);
    }
}
// Output: Time in hours: 24

Visão geral sobre propriedades

  • Propriedades permitem que uma classe para expor uma maneira pública de obter e definir valores, enquanto oculta a implementação ou a verificação de código.

  • A obter acessador de propriedade é usado para retornar o valor da propriedade e um set acessador é usado para atribuir um novo valor. Esses acessadores podem ter diferentes níveis de acesso. Para obter mais informações, consulte Restringindo a acessibilidade aos acessadores (Guia de Programação em C#).

  • O valor palavra-chave é usada para definir o valor que está sendo atribuído pelo set acessador.

  • Propriedades que não implementam um set acessador são somente leitura.

  • Propriedades simples que não exigem nenhum código personalizado do acessador, considere a opção de usar as propriedades de auto-implementado. Para obter mais informações, consulte Propriedades autoimplementadas (Guia de Programação em C#).

Seções relacionadas

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

Usando propriedades (Guia de Programação em C#)

Indexadores (Guia de Programação em C#)

Conceitos

Guia de Programação em C#