get (Riferimenti per C#)
La parola chiave get
definisce un metodo funzione di accesso in una proprietà o indicizzatore che restituisce il valore della proprietà o l'elemento dell'indicizzatore. Per altre informazioni, vedere Proprietà, [Proprietà implementate automaticamente](.. /.. /programming-guide/classes-and-structs/automatically implemented-properties.md) e indicizzatori.
L'esempio seguente definisce le funzioni di accesso get
e set
per una proprietà denominata Seconds
. Usa il campo privato denominato _seconds
per portare in secondo piano il valore della proprietà.
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;
}
}
}
Spesso la funzione di accesso get
è costituita da una singola istruzione che restituisce un valore, come nell'esempio precedente. È possibile implementare la funzione di accesso get
come membro con corpo di espressione. L'esempio seguente implementa entrambe le funzioni di accesso get
e set
come membri con corpo di espressione.
class TimePeriod2
{
private double _seconds;
public double Seconds
{
get => _seconds;
set => _seconds = value;
}
}
Per casi semplici in cui le funzioni di accesso e set
di get
una proprietà non eseguono altre operazioni rispetto all'impostazione o al recupero di un valore in un campo sottostante privato, è possibile sfruttare il supporto del compilatore C# per le proprietà implementate automaticamente. Nell'esempio seguente viene Hours
implementata come proprietà implementata automaticamente.
class TimePeriod3
{
public double Hours { get; set; }
}
Importante
Le proprietà implementate automaticamente non sono consentite per le dichiarazioni di proprietà dell'interfaccia o la dichiarazione di implementazione per una proprietà parziale. Il compilatore interpreta la sintassi corrispondente a una proprietà implementata automaticamente come dichiarazione dichiarante, non come dichiarazione di implementazione.
Specifiche del linguaggio C#
Per altre informazioni, vedere la specifica del linguaggio C#. La specifica del linguaggio costituisce il riferimento ufficiale principale per la sintassi e l'uso di C#.