Classicamente chamamos de polimorfismo a escolha (tardia), em tempo de execução, do método que será efetivamente executado quando enviamos uma mensagem para um objeto que está dentro de uma variável, por exemplo. A escolha do método a ser executado, depende do objeto que está recebendo a mensagem, e não da mensagem em si. Uma mesma mensagem enviada a objetos diferentes pode disparar comportamentos distintos.


Por outro lado também encontramos na literatura a menção de "polimorfismo em tempo de execução" descrita no parágrafo anterior e "polimorfismo em tempo de compilação" que seria a escolha do método de a ser executado de acordo com a lista de parâmetros enviados, ou seja sobrecarga.

Concordo que esta nomenclatura diverge da definição clássica de polimorfismo, mas pessoalmente eu gosto pois deixa claro o momento da escolha em que acontece a escolha de qual método será executado.

Cesar



Antonio Oliveira wrote:
LORDzCaros,

Para que ocorra polimorfismo se faz necessária a existência de herança de uma classe (abstrata de preferência) ou a implementação de uma interface.

PS: 1) Não vamos confundir o conceito de polimorfismo com o de sobrecarga. O segundo ocorre quando temos em uma mesma classe, métodos com nomes iguais e assinaturas diferentes.
2) O conceito de polimorfismo não é da linguagem de programação Java, mas sim da Orientação a Objetos.



[]


----- Original Message ----- From: diego To: [EMAIL PROTECTED] ; [EMAIL PROTECTED] Sent: Tuesday, July 01, 2003 12:06 PM
Subject: Re: [java-list] Polimorfismo só pode ser aplicado em classes que tenha Herança???



Não necessariamente.
Quando vc vai sobrecrever um método que está na classe pai, sem sombras de dúvida você precisa ter uma herança, mas quando você declara vários métodos com a mesma assinatura, mas que recebem parâmetros diferentes, isto também é considerado polimorfismo, e pouco importa, neste caso, que você tenha uma classe ancestral.
----- Original Message ----- From: [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Friday, June 27, 2003 08:27
Subject: [java-list] Polimorfismo só pode ser aplicado em classes que tenha Herança???






É correto afirmar que o Polimorfismo só pode ser aplicado em classes que tenha Herança??? Alguém pode me ajudar neste conceito?

Cordiais saudações,
Isaque Niche Ramos Jota


Cordiais saudações,
Isaque Niche Ramos Jota ( (22) 2772-8000
(22) 9903-5193 * [EMAIL PROTECTED] UIN:241967404






--
------------------------------------------------------------------------------
Cesar Fernando Moro - Email: [EMAIL PROTECTED] - ICQ: 157573186
System Analist/Professor - http://cfmoro.hopto.org
State University of Maringa - PR - Brazil - Fone:+055-44-261-4324
------------------------------------------------------------------------------
"There never was darkness or a problem that could defeat the sunrise or hope."
Bern Williams




------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------



Responder a