1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Polimorfismo dúvida persistente.

Pessoal creio ter entendido quase todo de polimorfismo, digo "quase" por somente um ponto que ainda tenho dúvidas.

Supondo que tenha a classe Animal e uma classe Tigre, sei que Tigre é um Animal portanto entende a classe Animal. Até aí ok. Para criar um objeto Tigre faço assim:

Tigre tigre = new Tigre();

Agora vem a dúvida: Vejo muito na net algo como isso:

Animal tigre = new Tigre();

Sei que se Tigre é um Animal podemos fazer como acima, mas não entendo qual a vantagem prática de se criar o objeto da forma abaixo.

Outro exemplo seria o ArrayList, que pelo o que me lembro herda List. Vejo muito os programadores escreverem desta forma:

List<String> lista = new ArrayList();

Invés de:

ArrayList<String> lista = new ArrayList();

Porque? Qual a vantagem prática de se usar a classe pai ao criar um objeto da classe filho?

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

4 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags polimorfismo java herança ou faça a sua própria pergunta.