Ne zaman salt Okunur kullanın ve tek özelliklerini Almak gerekir
Bir .NET uygulama ne zaman kullanmalıyım "salt Okunur" özelliklerini ve ne zaman kullanmalıyım sadece "". Bu ikisi arasındaki fark nedir.
private readonly double Fuel= 0;
public double FuelConsumption
{
get
{
return Fuel;
}
}
ya
private double Fuel= 0;
public double FuelConsumption
{
get
{
return Fuel;
}
}
CEVAP
Tek bir alıcı ile bir özellik yaratmak özellik salt okunur sınıfı dışında herhangi bir kod için yapar.
Ancak değeri yöntemleri sınıf tarafından sağlanan kullanarak değiştirebilirsiniz :
public class FuelConsumption {
private double fuel;
public double Fuel
{
get { return this.fuel; }
}
public void FillFuelTank(double amount)
{
this.fuel = amount;
}
}
public static void Main()
{
FuelConsumption f = new FuelConsumption();
double a;
a = f.Fuel; // Will work
f.Fuel = a; // Does not compile
f.FillFuelTank(10); // Value is changed from the method's code
}
readonly
Sınıf özel alan ayarı alan değeri sadece bir kez (veya sınıf yapıcısının içinde bir satır içi atama kullanarak) ayarlamanızı sağlar.
Daha sonra bunu değiştirmek mümkün olmayacaktır.
public class ReadOnlyFields {
private readonly double a = 2.0;
private readonly double b;
public ReadOnlyFields()
{
this.b = 4.0;
}
}
readonly
sınıf alanları genellikle sınıf inşaat sırasında başlatılır, ve asla daha sonra değişmiş olacak değişkenler için kullanılır.
Eğer mülkiyet sağlamak gerekirse Kısacası, değeri asla dışarıdan değiştiriliramasınıf kodunu değiştirmek gerekir, kullanın "sadece Al" özelliği.
Eğer hiç başlangıç değeri ayarlandıktan sonra değişecek olan bir değeri depolamak gerekiyorsa, readonly
alanı kullanın.
Ne zaman bir Liste kullanın vs bir Lin...
Neden Objective-C metot adı son bölümü...
Ne zaman Yazma Hatası kullanın vs Atma...
Nasıl JavaScript bir zaman damgası alm...
Nasıl Python ile şimdiki zaman almak i...