Bagikan melalui


get (Referensi C#)

Kata kunci get menentukan metode aksesor di dalam properti atau pengindeks yang mengembalikan nilai properti atau elemen pengindeks. Untuk informasi selengkapnya, lihat Properti, [Properti yang diterapkan secara otomatis](.. . /.. /programming-guide/classes-and-structs/implemented-properties.md otomatis), dan Pengindeks.

Contoh berikut menentukan pengakses get dan set untuk properti bernama Seconds. Contoh menggunakan bidang privat bernama _seconds untuk mendukung nilai properti.

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;
        }
    }
}

Sering kali, aksesor get terdiri dari satu pernyataan yang mengembalikan nilai, seperti yang terjadi pada contoh sebelumnya. Anda dapat menerapkan pengakses get sebagai anggota berisi ekspresi. Contoh berikut menerapkan aksesor get dan set sebagai anggota berisi ekspresi.

class TimePeriod2
{
    private double _seconds;

    public double Seconds
    {
        get => _seconds;
        set => _seconds = value;
    }
}

Untuk kasus sederhana di mana properti get dan set pengakses tidak melakukan operasi lain selain mengatur atau mengambil nilai di bidang pendukung privat, Anda dapat memanfaatkan dukungan pengkompilasi C# untuk properti yang diterapkan secara otomatis. Contoh berikut menerapkan Hours sebagai properti yang diimplementasikan secara otomatis.

class TimePeriod3
{
    public double Hours { get; set; }
}

Penting

Properti yang diterapkan secara otomatis tidak diizinkan untuk deklarasi properti antarmuka atau deklarasi penerapan untuk properti parsial. Kompilator menginterpretasikan sintaks yang cocok dengan properti yang diimplementasikan secara otomatis sebagai deklarasi deklarasi, bukan deklarasi penerapan.

Spesifikasi Bahasa C#

Untuk informasi selengkapnya, lihat Spesifikasi Bahasa C#. Spesifikasi bahasa adalah sumber definitif untuk sintaks dan penggunaan C#.

Lihat juga