get (Referência de C#)
A palavra-chave get
define um método do acessador em uma propriedade ou um indexador que retorna o valor da propriedade ou o elemento do indexador. Para mais informações, consulte Propriedades, Propriedades implementadas automaticamente e Indexadores.
O exemplo a seguir define um acessador get
e um acessador set
para uma propriedade chamada Seconds
. Ela usa um campo particular chamado _seconds
para dar suporte ao valor da propriedade.
class TimePeriod
{
private double _seconds;
public double Seconds
{
get { return _seconds; }
set
{
if (value < 0)
{
throw new ArgumentOutOfRangeException(nameof(value), "The value of the time period must be non-negative.");
}
_seconds = value;
}
}
}
Geralmente, o acessador get
consiste em uma única instrução que retorna um valor, como no exemplo anterior. Você pode implementar o acessador get
como um membro apto para expressão. O exemplo a seguir implementa os acessadores get
e set
como membros aptos para expressão.
class TimePeriod2
{
private double _seconds;
public double Seconds
{
get => _seconds;
set => _seconds = value;
}
}
Para casos simples em que os acessadores get
e set
de uma propriedade não realizam nenhuma outra operação, a não ser a configuração ou a recuperação de um valor em um campo de suporte particular, você pode tirar proveito do suporte do compilador do C# para propriedades autoimplementadas. O exemplo a seguir implementa Hours
como uma propriedade autoimplementada.
class TimePeriod3
{
public double Hours { get; set; }
}
Importante
As propriedades implementadas automaticamente não são permitidas para declarações de propriedade de interface ou declarações de propriedade parciais. Em ambos os casos, o compilador interpreta a sintaxe correspondente a uma propriedade implementada automaticamente como a declaração declarante, não uma declaração de implementação.
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#.