Bom, para comecar, existem 2 tipos de polimorfismo.
O primerio, e mais simples, eh o que voce descreve no
seu email. A possibilidade de escrever varios metodos
com o mesmmo nome, desde que tenham assinaturas*
diferentes. Esse tipo de policorfismo tambem eh
chamado de sobrecarga de metodo.

Um exemplo tipico desse pode ser encontrado nos
construtores. A classe String, por exemplo, pode ser
criada de 11 maneiras diferentes. 
Mas essa forma de polimerfismo eh muito simples, e por
si soh nao significa muito em termos de POO.

A outra forma de polimorfismo, muito mais util, eh a
capacidade de um objeto de uma subclasse ocupar o
lugar de um objeto da super classe. E a JVM se
encarrega de executar os metodos do objeto
instanciado, independente do tipo declarado.

Exemplo.

class FormaGeometrica {
    public void desenhar(){
        System.out.println("Forma Geometrica");
    }

}

class Triangulo extends FormaGeometrica {
    public void desenhar(){
        System.out.println("Triangulo");
    }
}


public class Foo  {
    
    public static void main(String[] s) {
        FormaGeometrica f = new Triangulo();
        f.desenhar();
    }
}


Quando o metodo �desenhar� for executado em �f�, a
string �Triangulo� serah impressa, mesmo que �f� tenha
sido declarado como do tipo �FormaGeometrica�. Esse eh
o polimorfismo que tem mais valor na POO, e resolve
diversos problemas. Tambem eh chamado de �Dynamic
Binding�, �Late Binding�, �Run-time Binding� e outros
sinonimos, na literatura.
Praticamente todo bom livro de POO/Java tem uma boa
definicao de polimorfismo. 





* o numero, o tipo e a ordem dos parametros de um
metodo definem sua assinatura. Porem, o tipo de
retorno de um metodo nao eh parte da assinatura, pelo
menos nao em Java ou C++. 


Silvio


--- Yurion Andr� <[EMAIL PROTECTED]> wrote:
> Caros amigos,
> 
> Estou estudando POO e estou com algumas d�vidas
> sobre
> polimorfismo.
> A �nica coisa que sei sobre o assunto � que 
> est� propriedade da OO permite que uma classe tenha
> v�rios m�todos com o mesmo nome desde de que o
> m�mero
> e o tipo de par�metros seja diferentes.
> Todo mundo fala que polimorfismo � s� isso!!
> Por�m queria que se poss�vel vc�s me mostrassem
> exemplos de onde e quando utilizar est� propriedade
> e
> o que significa realmente polimorfismo..
> Desde j� agrade�o a aten��o de todos,
> 
> Andr� Yurion
> 
> __________________________________________________
> Do You Yahoo!?
> Get email at your own domain with Yahoo! Mail. 
> http://personal.mail.yahoo.com/
> 
> ------------------------------ 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
> para sair da lista: envie email para
> [EMAIL PROTECTED] 
>
-------------------------------------------------------------------------
> 
> 
> 
> 


__________________________________________________
Do You Yahoo!?
Get email at your own domain with Yahoo! Mail. 
http://personal.mail.yahoo.com/

------------------------------ 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
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a