Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Anahtar private sözcük bir üye erişim değiştiricidir.
Bu sayfa
privateerişime kapsar. Anahtarprivatesözcüğü de erişim değiştiricisininprivate protectedbir parçasıdır.
Özel erişim en az izinli erişim düzeyidir. Özel üyelere yalnızca sınıfın gövdesinde veya bu örnekte olduğu gibi bildirildikleri yapıda erişilebilir:
class Employee
{
private int _i;
double _d; // private access by default
}
Aynı gövdedeki iç içe türler de bu özel üyelere erişebilir.
Sınıfın veya bildirildiği yapının dışındaki bir özel üyeye başvurmak bir derleme zamanı hatasıdır.
Diğer erişim değiştiricileriyle karşılaştırması private için bkz . Erişilebilirlik Düzeyleri ve Erişim Değiştiricileri.
Örnek
Bu örnekte sınıfı Employee iki özel veri üyesi _name ve _salaryiçerir. Özel üyeler olarak, üye yöntemleri dışında bunlara erişilemez. özel üyelere denetimli erişime izin vermek için ve Salary adlı GetName genel yöntemler eklenir. Üyeye _name ortak bir yöntemle erişilir ve üyeye _salary genel salt okunur bir özellik yoluyla erişilir. Daha fazla bilgi için bkz. özellikler .
class Employee2
{
private readonly string _name = "FirstName, LastName";
private readonly double _salary = 100.0;
public string GetName()
{
return _name;
}
public double Salary
{
get { return _salary; }
}
}
class PrivateTest
{
static void Main()
{
var e = new Employee2();
// The data members are inaccessible (private), so
// they can't be accessed like this:
// string n = e._name;
// double s = e._salary;
// '_name' is indirectly accessed via method:
string n = e.GetName();
// '_salary' is indirectly accessed via property
double s = e.Salary;
}
}
C# dil belirtimi
Daha fazla bilgi için bkz. C# Dil Belirtimi'ndebildirilen erişilebilirlik. Dil belirtimi, C# söz dizimi ve kullanımı için kesin kaynaktır.