Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvidas conceituais sobre polimorfismo

Eu gostaria de confirmar alguns conceitos sobre polimorfismo. Vi alguns tópicos aqui mas gostaria de resumir tudo em um só, se for possível, pode ser? Quando criamos:

Funcionario g1 = new Gerente();

Levando em consideração a herança proposta nessa aula em que Funcionario extends Gerente.

As afirmações abaixo estão todas corretas?

1) O nosso objeto tem todos os atributos da sub class Gerente, ou seja, todos os atributos de Funcionario mais "senha"?

2) O nosso objeto NÃO tem acesso aos métodos da sub class Gerente pois foi criado como referência Funcionario.

3) O nosso objeto tem acesso ao método "getBonificacao" da sub class gerente mas somente porque este método foi herdado da super class Funcionario, porque senão não teria, assim como não tem acesso ao método autentica().

4) Podemos dizer que o método "getBonificacao" é uma sobrecarga do método de mesmo nome da classe Funcionario?

Obrigado desde já.

1 resposta
solução!

Boa noite!

Primeiro , um detalhe... pelo que eu lembro da aula, Gerente extends Funcionario e não Funcionario extends Gerente , como você informou. Não só Gerente, mas outras funções também extends Funcionario.

Agora, vamos aos pontos:

Funcionario g1 = new Gerente();

1) Incorreto. g1 foi declarada como Funcionario . Assim , só tem acesso aos dados de Funcionario. Não importa o "new". O que importa é o tipo da variável.

2) Correto. É a inversão da primeira pergunta.

3) Incorreto. O nosso objeto tem acesso ao método "getBonificacao" da classe Funcionario:

public double getBonificacao() { return this.salario * 0.5;}

A classe Gerente faz o polimorfismo. Ele sobrescreve o método da superclasse.

4) Este é o conceito do Polimorfismo: é o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma identificação (assinatura), mas comportamentos distintos.

Se mais dúvidas aparecerem, ou alguma ainda ficar, posta aqui que seguimos ajudando!

Bons estudos!

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