Junior — Middle
Spiega lo scopo e l'uso del modificatore di accesso protected nella programmazione orientata agli oggetti.
sobes.tech AI
Risposta dell'AI
Il modificatore di accesso protected nella programmazione orientata agli oggetti limita l’accesso ai membri di una classe (campi, metodi) in modo che siano accessibili:
- All’interno della stessa classe,
- Nelle classi derivate,
- All’interno dello stesso package (nelle lingue che prevedono il concetto di package, ad esempio Java).
Questo permette di nascondere i dettagli di implementazione al mondo esterno, ma di consentire alle sottoclassi di utilizzare e sovrascrivere questi membri.
Esempio in Java:
public class Animal {
protected void makeSound() {
System.out.println("Suono");
}
}
public class Dog extends Animal {
@Override
protected void makeSound() {
System.out.println("Abba");
}
}
Qui, il metodo makeSound è accessibile nella classe Dog, ma non in altre classi che non sono eredi.