-
Notifications
You must be signed in to change notification settings - Fork 0
polimorfism
Gabriel Fanto Stundner edited this page Apr 23, 2018
·
2 revisions
Retornar |
---|
-
Polimorfismo é a capacidade de assumir formas diferentes
-
Uma linguagem orientada a objetos deve permitir a utilização de variáveis polimórficas
-
Existem dois tipos de Polimorfismo:
- Polimorfismo Estático ou Sobrecarga
- Polimorfismo Dinâmico ou Sobreposição
-
Polimorfismo Estático se dá quando temos a mesma operação implementada várias vezes na mesma classe
-
A escolha de qual operação será chamada depende da assinatura dos métodos sobrecarregados
-
Foram feitos exemplos sobre Sobrecarga na Parte de Interface
//exemplo com um construtor:
public TesteClasse(){...}
public TesteClasse(int n){...}
//isso se pode fazer devido ao polimorfismo
- Polimorfismo Dinâmico acontece na herança,quando a SubClasse sobrepõe o método original
- Agora o método escolhido se dá em tempo de execução e não mais em tempo de compilação
- A escolha de qual método será chamado depende do tipo do objeto que recebe a mensagem
- Também foi apresentado na Parte sobre Herança
- Também foi apresentado na Parte sobre Classes Abstratas
//esse caso é quando fazemos Override de métodos nas SubClasses
//exemplo feito até agora: toString()
@Override //foi sobreposto o método nesta classe
public String toString(){...}
//outro exemplo é fazer sobreposição devido a classe abstrata
// Na classe Abstrata:
public abstract String nomeMetod();
//na classe conectada a Classe Abstrata:
public String nomeMetod(){...}