Sobes.tech
Junior — Middle

Magyarázza el, mit jelent a 'protected' hozzáférés módosító a programozási nyelvben, és hogyan használják osztályokban.

sobes.tech MI

Válasz az MI-től

A C# nyelvben a protected hozzáférés módosító azt jelenti, hogy a osztály tagja:

  • Az osztályon belül,
  • Származtatott osztályokban (örökösök), még akkor is, ha más névtérben vagy összegben vannak.

Azonban, ellentétben a public-tal, a protected nem teszi lehetővé a hozzáférést a taghoz más osztályokból, amelyek nem örökösök.

Használati példa:

class BaseClass
{
    protected int protectedValue = 10;
}

class DerivedClass : BaseClass
{
    public void ShowValue()
    {
        Console.WriteLine(protectedValue); // Engedélyezett hozzáférés
    }
}

class OtherClass
{
    public void TryAccess()
    {
        BaseClass obj = new BaseClass();
        // Console.WriteLine(obj.protectedValue); // Fordítási hiba: hozzáférés megtagadva
    }
}

Így a protected segít korlátozni a hozzáférést az osztály tagjaihoz, lehetővé téve azok használatát csak öröklődési hierarchiában.