----- Original Message -----
From: "Yurion André" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, March 07, 2001 2:44 PM
Subject: [java-list] Polimorfismo
> 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]
> -------------------------------------------------------------------------
Imagina uma super classe ou interface Poligono:
public interface Poligono{
public void draw();
}
E duas classes filhos de polígonos: Triangulo e Quadrado:
public class Triangulo implements Poligono{
/** rotina que desenha um triangulo */
public void draw(){
System.out.println("desenhar um triangulo");
}
}
public class Quadrado implements Poligono{
/** rotina que desenha um quadrado */
public void draw(){
System.out.println("desenhar um quadrado");
}
}
Imagine uma classe que contém uma colecao de poligonos e as desenhe:
public class PoligonoCollection extends Vector {
public void inserirPoligono(Poligono poligono){
addElement(poligono);
}
public void drawAll(){
java.util.Enumeration enumeration = elements();
while(enumeration.hasMoreElements()){
((Poligono)enumeration.nextElement()).draw();
}
}
}
E uma classe para testa-lo ...
public class TestePoligonos{
public static void main(String [] args){
PoligonoCollection pCollection = new PoligonoCollection();
pCollection.inserirPoligono(new Triangulo());
pCollection.inserirPoligono(new Triangulo());
pCollection.inserirPoligono(new Triangulo());
pCollection.inserirPoligono(new Quadrado());
pCollection.inserirPoligono(new Triangulo());
pCollection.inserirPoligono(new Quadrado());
pCollection.inserirPoligono(new Triangulo());
pCollection.inserirPoligono(new Quadrado());
pCollection.drawAll();
}
}
Por que o polimorfismo ???
Imagina uma outra situação onde você precise utilizar outras figuras
geométricas além do Triangulo e Quadrado...
Você precisa reimplementar a classe PoligonoCollection ???
Resposta é não !
Sacou o por que do polimorfismo ????
[]'s
LN
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://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]
-------------------------------------------------------------------------