Sobes.tech
Junior — Middle

Explica scopul și utilizarea modificatorului de acces protected în programarea orientată pe obiecte.

sobes.tech AI

Răspuns de la AI

Modificatorul de acces protected în programarea orientată pe obiecte limitează accesul la membrii clasei (câmpuri, metode) astfel încât aceștia să fie accesibili:

  • În interiorul clasei în sine,
  • În clasele moștenitoare,
  • În cadrul aceluiași pachet (în limbajele care au conceptul de pachet, de exemplu Java).

Aceasta permite ascunderea detaliilor de implementare de lumea exterioară, dar în același timp permite subclasele să utilizeze și să suprascrie acești membri.

Exemplu în Java:

public class Animal {
    protected void makeSound() {
        System.out.println("Un sunet");
    }
}

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

Aici, metoda makeSound este accesibilă în clasa Dog, dar nu și în alte clase care nu sunt moștenitoare.