Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Fiquei confuso entre os exercícios 3 e 4

No exercício 3

temos 3 classes - cada uma tem o método liga()

no main está sim:

veiculo m = new Moto();
m.liga();

veiculo c = new Carro();
c.liga();

A resposta é

Ligando MotoLigando Carro

No exercício 4

É Baseado nas nossas atividades

Tem esse código no método main

Funcionario f = new Gerente();
f.autentica(1234);

A minha resposta foi baseada no exercício anterior, e nesse casso iria acessar o metodo da classe Gerente, porém a resposta é:

"Porque a referência f é do tipo Funcionario e a classe Funcionario não tem o método autentica."

Então a reposta do exercício anterior, não teria que ser:

Ligando VeiculoLigando Veiculo

Por que as referências são da classe veículo.

3 respostas
solução!

Creio que o pensamento é simples, se um filho tem um método próprio ele deve utilizar este método e não o do pai, o qual seria mais apropriado marcar como métodos abstratos, logo a saída é a mais especifica.

Entendi.

Obrigado pela ajuda.

Tópico solucionado.

Fechando o tópico para que facilite para os próximos alunos com essa dúvida.