Sobes.tech
Junior — Middle

Jaką rolę odgrywają modyfikatory dostępu w zarządzaniu widocznością elementów klasy?

sobes.tech AI

Odpowiedź od AI

Modyfikatory dostępu określają, które części kodu mogą widzieć i używać określonych elementów klasy (pól, metod, właściwości). Jest to ważny mechanizm enkapsulacji, który pomaga kontrolować dostęp do wewnętrznych danych i logiki klasy, zapewniając bezpieczeństwo i zapobiegając niewłaściwemu użyciu.

Główne modyfikatory dostępu:

  • public — dostęp otwarty dla wszystkich, element jest widoczny wszędzie.
  • private — dostęp tylko w obrębie samej klasy.
  • protected — dostęp w obrębie klasy i jej dziedziców.
  • internal (w C#) — dostęp w obrębie bieżącego zestawu (projektu).
  • protected internal — dostęp w obrębie zestawu i dla dziedziczących.

Na przykład, jeśli pole zostanie oznaczone jako private, nie będzie dostępne z zewnątrz, co pozwala na modyfikację tylko przez metody klasy, kontrolując logikę zmiany.

Przykład w C#:

class Person
{
    private string name; // niedostępne z zewnątrz

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

    public string GetName() => name;
}