Aracılığıyla paylaş


set anahtar sözcüğü (C# Başvurusu)

anahtar sözcüğü, set özelliğe veya dizin oluşturucu öğesine değer atayan bir özellikte veya dizin oluşturucuda bir erişimci yöntemi tanımlar. Daha fazla bilgi ve örnek için bkz . Özellikler, Otomatik olarak uygulanan özellikler ve Dizin Oluşturucular.

Bir özelliğin get ve set erişimcinin özel bir yedekleme alanındaki bir değeri ayarlamak veya almaktan başka bir işlem gerçekleştirmediği basit durumlarda, otomatik olarak uygulanan özellikleri kullanabilirsiniz. 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.

Aksesuar gövdelerinden birini uygulamanız gerektiğini fark edebilirsiniz. field C# 13'te önizleme özelliği olarak eklenen anahtar sözcük, alan destekli bir özellik bildirir. 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 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 preview proje dosyanızda .NET 9 kullanıyor field olmanız ve öğenizi <LangVersion> 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@.@fieldfield Anahtar sözcüğü için özellik belirtimini field okuyarak daha fazla bilgi edinebilirsiniz.

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

class TimePeriod2
{
    private double _seconds;

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

Aşağıdaki örnek, adlı Secondsözelliğin hem a get hem set 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# dili 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.