Sobes.tech
Junior — Middle

Обяснете какво означава модификаторът за достъп 'protected' в езика за програмиране и как се използва в класовете.

sobes.tech AI

Отговор от AI

Модификаторът за достъп protected в C# означава, че членът на класа е достъпен:

  • Вътре в самия клас,
  • В наследяващите класове (наследници), дори ако са в друг пространство от имена или сборка.

Въпреки това, за разлика от public, protected не позволява достъп до члена от други класове, които не са наследници.

Пример за използване:

class BaseClass
{
    protected int protectedValue = 10;
}

class DerivedClass : BaseClass
{
    public void ShowValue()
    {
        Console.WriteLine(protectedValue); // Разрешен достъп
    }
}

class OtherClass
{
    public void TryAccess()
    {
        BaseClass obj = new BaseClass();
        // Console.WriteLine(obj.protectedValue); // Грешка при компилация: достъпът е отказан
    }
}

Така protected помага да се ограничи достъпът до членовете на класа, позволявайки ги да се използват само в йерархията на наследяване.