Aracılığıyla paylaş


get anahtar sözcüğü

anahtar sözcüğü, get özellik değerini veya dizin oluşturucu öğesini döndüren bir özellik veya dizin oluşturucuda bir erişimci yöntemi tanımlar. Daha fazla bilgi için bkz. Özellikler, Otomatik olarak uygulanan Özelliklerve Dizin Oluşturucuları.

Bir özelliğin get ve set erişimcinin özel bir yedekleme alanındaki değeri ayarlamak veya almaktan başka bir işlem gerçekleştirmediği basit durumlarda, C# derleyicisinin otomatik olarak uygulanan özelliklere yönelik desteğinden yararlanabilirsiniz. Aşağıdaki örnek, otomatik olarak uygulanan bir özellik olarak uygulanır Hours .

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

Önemli

Arabirim özelliği bildirimleri veya kısmi özellik için uygulama bildirimi için otomatik olarak uygulanan özelliklere izin verilmez. Derleyici, otomatik olarak uygulanan bir özelliği uygulayan bir bildirim olarak değil bildirim bildirimi olarak eşleşen söz dizimini yorumlar.

Genellikle erişimci, get önceki örnekte olduğu gibi bir değer döndüren tek bir deyimden oluşur. Erişimciyi get ifade gövdeli üye olarak uygulayabilirsiniz. Aşağıdaki örnek hem hem de erişimcisini getset ifade gövdeli üyeler olarak uygular.

class TimePeriod2
{
    private double _seconds;

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

Aksesuar gövdelerinden birini uygulamanız gerektiğini fark edebilirsiniz. Siz diğerini el ile yazarken derleyicinin bir erişimci oluşturmasına izin vermek için alan destekli bir özellik kullanabilirsiniz. Derleyici sentezlenmiş field yedekleme alanına erişmek için C# 13'te önizleme özelliği olarak eklenen anahtar sözcüğünü kullanırsınız:

class TimePeriod4
{
    public double Hours {
        get;
        set => field = (value >= 0)
            ? value
            : throw new ArgumentOutOfRangeException(nameof(value), "The value must not be negative");
    }
}

Önemli

Anahtar field sözcük, C# 13'teki bir önizleme özelliğidir. Bağlamsal anahtar sözcüğü kullanmak için <LangVersion> proje dosyanızda .NET 9 kullanıyor preview olmanız ve öğenizi field olarak ayarlamanız gerekir.

adlı fieldbir alanı olan bir sınıfta anahtar sözcük özelliğini kullanırken field dikkatli olmalısınız. Yeni field anahtar sözcük, özellik erişimcisi kapsamında adlı field bir alanın gölgesini oluşturur. Değişkenin adını değiştirebilir veya tanımlayıcıya olarak başvurmak field için belirteci kullanabilirsiniz@.field@field Anahtar sözcüğüfield okuyarak daha fazla bilgi edinebilirsiniz.

Aşağıdaki örnek, adlı getözelliğin hem a set hem Seconds de erişimcisini tanımlar. Özellik değerini yedeklemek için adlı _seconds özel bir alan kullanır.

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

C# Dil Belirtimi

Daha fazla bilgi edinmek için, bkz. C# Dil Belirtimi. Dil belirtimi, C# sözdizimi ve kullanımı için kesin bir kaynaktır.

Ayrıca bkz.