Sem resumo de edição |
|||
| (9 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
= Conceito = | = Conceito = | ||
''Polimorfismo é um conceito utilizado em muitas linguagens de programação, sendo seu conceito básico: Uma operação que pode assumir múltiplas formas, a propriedade segundo o qual uma operação pode comportar-se diferentemente em classes diferentes. | |||
= Propriedades = | = Propriedades = | ||
* Polimorfismo ad hoc | |||
Não existe um modo único e sistemático de determinar o tipo deresultado de uma função em termos dos tipos dos seusargumentos de entrada. | |||
É uma forma limitada de polimorfismo. | |||
Possui duas formas: coerção e sobrecarga. | |||
*Polimorfismo universal | |||
Trabalha potencialmente num conjunto infinito de tipos de modo disciplinado. | |||
Possui duas formas: paramétrico e inclusão.'' | |||
== Prop 1. == | == Prop 1. == | ||
* Sobrecarga | |||
Permite que um nome de função seja utilizado mais do que uma vez com diferentes tipos de parâmetros. | |||
Exemplo: | |||
- Uma função soma pode ser sobrecarregada para operar com dois parâmetros inteiros e dois reais. | |||
== Prop 2. == | == Prop 2. == | ||
* Coerção | |||
Meio para contornar a rigidez dos tipos monomórficos. | |||
Existe um mapeamento interno entre tipos. | |||
*Exemplo: | |||
– Se o operador soma é definido como tendo 2 parâmetros reais e um inteiro e um real são passados como parâmetros, o inteiro é “coargido” para um real. | |||
== Prop 3. == | == Prop 3. == | ||
*Paramétrico | |||
Uma única função é codificada e ela trabalhará uniformemente num intervalo de tipos. | |||
Funções paramétricas também são chamadas de funções genéricas. | |||
*Exemplo: | |||
comprimento::[A] > NUM, para todos os tipo A. | |||
== Prop 4. == | == Prop 4. == | ||
*Inclusão | |||
É encontrada somente em linguagens orientadas a objetos e está relacionada com a noção de subtipo. | |||
*Exemplo: | |||
Hierarquia de classes. | |||
= Referências Bibliográficas = | = Referências Bibliográficas = | ||
| Linha 21: | Linha 42: | ||
Válida a pesquisa apenas em Livros, Artigos ou Revistas. | Válida a pesquisa apenas em Livros, Artigos ou Revistas. | ||
* | *Prof. Tiago Eugenio de Melo,Introdução à Orientação a Objetos. | ||
*C. M. F. Rubira. Introdução à Análise Orientada a Objetos. Editora da Unicamp, 2002 | |||
Edição atual tal como às 01h32min de 12 de novembro de 2014
Conceito
Polimorfismo é um conceito utilizado em muitas linguagens de programação, sendo seu conceito básico: Uma operação que pode assumir múltiplas formas, a propriedade segundo o qual uma operação pode comportar-se diferentemente em classes diferentes.
Propriedades
- Polimorfismo ad hoc
Não existe um modo único e sistemático de determinar o tipo deresultado de uma função em termos dos tipos dos seusargumentos de entrada. É uma forma limitada de polimorfismo. Possui duas formas: coerção e sobrecarga.
- Polimorfismo universal
Trabalha potencialmente num conjunto infinito de tipos de modo disciplinado. Possui duas formas: paramétrico e inclusão.
Prop 1.
- Sobrecarga
Permite que um nome de função seja utilizado mais do que uma vez com diferentes tipos de parâmetros.
Exemplo:
- Uma função soma pode ser sobrecarregada para operar com dois parâmetros inteiros e dois reais.
Prop 2.
- Coerção
Meio para contornar a rigidez dos tipos monomórficos. Existe um mapeamento interno entre tipos.
- Exemplo:
– Se o operador soma é definido como tendo 2 parâmetros reais e um inteiro e um real são passados como parâmetros, o inteiro é “coargido” para um real.
Prop 3.
- Paramétrico
Uma única função é codificada e ela trabalhará uniformemente num intervalo de tipos. Funções paramétricas também são chamadas de funções genéricas.
- Exemplo:
comprimento::[A] > NUM, para todos os tipo A.
Prop 4.
- Inclusão
É encontrada somente em linguagens orientadas a objetos e está relacionada com a noção de subtipo.
- Exemplo:
Hierarquia de classes.
Referências Bibliográficas
Válida a pesquisa apenas em Livros, Artigos ou Revistas.
- Prof. Tiago Eugenio de Melo,Introdução à Orientação a Objetos.
- C. M. F. Rubira. Introdução à Análise Orientada a Objetos. Editora da Unicamp, 2002