Ao trabalhar com herança, é fundamental entender como controlar o acesso aos atributos e métodos.
Os modificadores private e protected definem quem pode ver ou modificar elementos dentro de uma classe.
| Modificador | Mesma Classe | Subclasses (herança) | Mesmo Pacote | Outros Pacotes |
|---|---|---|---|---|
| private | ✅ Sim | ❌ Não | ❌ Não | ❌ Não |
| protected | ✅ Sim | ✅ Sim | ✅ Sim | ❌ (exceto subclasses) |
private – O nível mais restritopublic class Ninja {
private String jutsuSecreto = "Técnica proibida";
}
🔍 Atributo totalmente interno: só a classe sabe que ele existe.
protected – Acesso para herança e pacote