Sobes.tech
Junior — Middle

Kokią vaidmenį atlieka prieigos modifikatoriai klasės elementų matomumui valdyti?

sobes.tech AI

Atsakymas iš AI

Prieigos modifikatoriai nustato, kurios kodo dalys gali matyti ir naudoti tam tikrus klasės elementus (laukus, metodus, savybes). Tai svarbus inkapsuliacijos mechanizmas, padedantis kontroliuoti prieigą prie vidinių duomenų ir klasės logikos, užtikrinti saugumą ir išvengti netinkamo naudojimo.

Pagrindiniai prieigos modifikatoriai:

  • public — prieiga atvira visiems, elementas matomas visur.
  • private — prieiga tik klasės viduje.
  • protected — prieiga klasės ir jos paveldėtojų viduje.
  • internal (C#) — prieiga viduje esamo rinkinio (projekto).
  • protected internal — prieiga rinkinio ir paveldėtojų viduje.

Pavyzdžiui, jei lauką padarysite private, jis nebus prieinamas iš išorės, tai leidžia jį keisti tik per klasės metodus, kontroliuojant keitimo logiką.

C# pavyzdys:

class Person
{
    private string name; // nepasiekiama iš išorės

    public void SetName(string newName)
    {
        if (!string.IsNullOrEmpty(newName))
            name = newName;
    }

    public string GetName() => name;
}