Sobes.tech
Junior — Middle

Wyjaśnij cel i użycie modyfikatora dostępu protected w programowaniu obiektowym.

sobes.tech AI

Odpowiedź od AI

Modyfikator dostępu protected w programowaniu obiektowym ogranicza dostęp do członków klasy (pól, metod) w taki sposób, że są one dostępne:

  • Wewnątrz samej klasy,
  • W klasach dziedziczących,
  • W obrębie tego samego pakietu (w językach, które mają pojęcie pakietu, np. Java).

Pozwala to ukryć szczegóły implementacji przed światem zewnętrznym, ale jednocześnie umożliwia podklasom korzystanie i nadpisywanie tych członków.

Przykład w Java:

public class Animal {
    protected void makeSound() {
        System.out.println("Dźwięk");
    }
}

public class Dog extends Animal {
    @Override
    protected void makeSound() {
        System.out.println("Szczekanie");
    }
}

Metoda makeSound jest dostępna w klasie Dog, ale nie jest dostępna z innych klas, które nie są dziedziczące.