Junior — Middle
Nesne yönelimli programlamada private ve protected erişim belirteçleri arasındaki fark nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Nesne yönelimli programlamada (C# örneğiyle) erişim belirteçleri private ve protected, sınıf üyelerinin görünürlüğü seviyelerinde farklılık gösterir:
-
private — sınıf üyesi yalnızca sınıf içinde erişilebilir. Alt sınıflar veya diğer sınıflar buna erişemez.
-
protected — sınıf üyesi, sınıf içinde ve tüm alt sınıflarında (miras alanlar) erişilebilir, hatta farklı bir isim alanında olsalar bile.
Örnek:
class BaseClass
{
private int privateField = 1;
protected int protectedField = 2;
void Show()
{
Console.WriteLine(privateField); // Erişilebilir
Console.WriteLine(protectedField); // Erişilebilir
}
}
class DerivedClass : BaseClass
{
void ShowDerived()
{
// Console.WriteLine(privateField); // Hata: privateField erişilemez
Console.WriteLine(protectedField); // Erişilebilir
}
}
Bu nedenle, protected, private ile karşılaştırıldığında erişim alanını genişletir ve miras alanların temel sınıfın korumalı üyeleriyle çalışmasına izin verir.