get (C# 參考)
get
關鍵字會在屬性或索引子中定義「存取子」方法,以傳回屬性值或索引子項目。 如需詳細資訊,請參閱 屬性[自動實作的屬性](.。/../programming-guide/classes-and-structs/automatically implemented-properties.md),以及 Indexers。
下列範例會為名為 Seconds
的屬性定義 get
和 set
存取子。 它使用名為 _seconds
的私用欄位來支援屬性值。
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;
}
}
}
get
存取子通常是由傳回值的單一陳述式所組成,如上述範例所示。 您可以將 get
存取子實作為運算式主體成員。 下列範例會將 get
和 set
存取子實作為運算式主體成員。
class TimePeriod2
{
private double _seconds;
public double Seconds
{
get => _seconds;
set => _seconds = value;
}
}
對於屬性 get
和 set
存取子除了在私人支援字段中設定或擷取值以外的任何作業,您可以利用 C# 編譯程式對自動實作屬性的支援。 下列範例會實作為自動實作 Hours
的屬性。
class TimePeriod3
{
public double Hours { get; set; }
}
C# 語言規格
如需詳細資訊,請參閱<C# 語言規格>。 語言規格是 C# 語法及用法的限定來源。