Boa tarde Senhores, estou estudado para a certificação java 1.6, e comprei o livro " Certificação Sun para Programador Java 6 - Guia de Estudo - Kathy Sierra", e na página 22 do capítulo 01, onde fala sobre módificadores de acesso no tópico “Detalhes de Protected”, no final da página 21 já pulando para a 22, o livro diz:
“Depois que a subclasse de fora do pacote herda o membro protected, ele torna-se private para qualquer código de fora da subclasse, com a excessão das subclasses dessa subclasse. […] Resumo da história, quando uma subclasse de fora do pacote herda um membro protect, esse membro torna-se essencialmente private dentro da subclasse, de forma tal que apena a subclasse e as suas classes podem acessá-lo.”
Certo, ao testar a afirmação acima no eclipse, fiz o seguinte teste:
package certification;
public class Pai {
protected void teste () {
System.out.println("testando protected");
}
}
package other;
import certification.Pai;
public class Filha extends Pai{
}
package otherpackage;
import other.Filha;
public class Neto extends Filha{
public Neto () {
teste();
}
}
Após város testes, conclui que o método teste que foi herdado pela classe “Filha” continua sendo protected na classe filha,e pode ser herdado novamente pela classse Neto, e não private como citado pela autora do livro Kathy Sierra.
Posso estar equivocado, ou talvez tenha interpretado equivocadamente a citação da autora, gostaria que alguem opinasse a respeito se estou certo ou errado.
Agradeço desde já pela ajuda, voltarei aos estudos.
Obrigado
[]
GustavoR’Braz