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 get
set
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ı field
bir 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.