4
respostas

exercício 3

Não entendi o fato de o atributo "saldo" de conta ter que ser protected. No meu entendimento , quando você herda da classe mãe, você herda os atributos privates também

4 respostas

Oi Lorenza,

de certa forma, quando vc cria o filho ele é composto dos atributos da classe mãe e do filho. Mesmo assim, o filho não pode acessar os atributos privados da mãe. o compilador não permite!

abs

Para acessar:

Private - os atributos devem ser utilizados os métodos gets e sets assim consegue manipular estes atributos.

Protected - ele acessa diretamente quando for herdado, como se os atributos pertencer a mesma classe.

Exemplo

Um DAOGenerico que estou fazendo no meu projeto, eu crio o EntityManager como protected para poder ser utilizado no EstadoDAO, CidadeDAO, etc.

Evito assim de ter que ficar criando gets e sets sem necessidade e só terá acesso ao EntityManager somente das classe Pai e filho, não liberando acesso para outras classes já que elas não irão necessitar destes atributos.

Dê uma olhada na tabela de acesso no link a seguir: https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

Na especificação da linguagem, privado é exclusivo da classe.

Ou seja, somente da classe mãe.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software