Caro Michael,

Eu vou lhe fazer uma pergunta e se a sua resposta for adequada eu posso
mudar de opinião quanto a minha posição. A pergunta é:

  Porque o overloading não é polimorfismo?

Acredito que a resposta a esta pergunta é crucial para definirmos se
overloading é ou não é polimorfismo.

Acho que você está colocando a sua definição como final e acredito que a
discussão é longe de final. Se devemos fechar a questão, ela deve ser
fechada como está: em aberto (paradoxal mas inevitável). A sua argumentação
é baseada nas suas idéias e está desconsiderando toda e qualquer
arguemntação que eu coloquei.

Quanto ao seu email, tenho alguns comentários:

Segue:

Mister M wrote:
> 
> -> Pq a discussao eh pertinente?
> 
> Se polimorfismo tb pode ser aplicado a overloading (q tb eh uma "feature"
> utilissima do Java, indiscutivelmente) eh uma questao quase religiosa em q
> cada um faz sua decisao. O grande ponto da questao eh q, qdo disserem
> polimorfismo no contexto OOP, sempre pense somente em OVERRIDING.

Não. Quando disserem polimorfismo, pense em overriding e overloading.

> Espere q tenha ficado claro o ponto.

Idem.

> Respeito a opiniao dos colegas q acham
> q o termo polimorfismo tb deveria ser aplicado a overloading e reconheco q
> uma traducao literal do termo (muitas formas) poderia induzir alguem a
> aceitar a ideia, mas por razoes historicas, mantenho minha opiniao sobre se
> aplicar somente  a overriding, dynamic binding e afins.

Também mantenho minha opinião de que polimorfismo aplica-se a overriding e
overloading, dynamic binding e afins.

> Poderiamos fazer 12.000.000 de citacoes de livros e nunca chegariamos a
> lugar algum, jah q comecariamos a discutir quem acha qual autor melhor q o
> outro - e aih entrariamos em uma discussao completamente pessoal e
> off-topic.

Concordo, vamos então mudar o foco da discussão a teoria em si e tentarmos
chegar em uma conclusão.

> Em suma:
> 
> -> Polimorfismo significa muitas formas;
> -> Polimorfismo eh um dos conceitos essenciais da OOP;
> -> Dentro do contexto OOP, polimorfismo refere-se unica e exclusivamente a
> overloading, dynamic binding e afins;

Ou:

 - Dentro do contexto OOP, polimorfismo refere-se unica e 
   exclusivamente a overloading, OVERRIDING, dynamic binding
   e afins;

> -> Dentro do contexto de programacao, alguns afirmam q polimorfismo tb se
> aplica a overloading, conceito este q vem da epoca em q existia somente o C
> e do qual alguns discordam;

Dentro do contexto de OO também diz-se isto.

> -> Overriding e dynamic binding sao essenciais para q o Java seja
> considerado uma linguagem orientada a objetos, enquanto overloading existe
> em varias linguagens nao-orientadas tb, o q nao faz com q deixe de ser uma
> caracteristica extremamente util do Java

Você está cometendo uma falácia lógica. Se para algo pertencer a um
conjunto A ele tem que ter as características {X,Y,Z}, não quer dizer que
se um elemento que não pertence ao conjunto A contém alguma das
características então estas caracterísitcas não definem o conjunto A.

> -> CHEGA DE DISCUTIR POLIMORFISMO; CADA UM DECIDA SE ACHA Q O TERMO SE
> APLICA, ALEM DE A OVERRIDING (O Q EH INDISCUTIVEL) TB A OVERLOADING (EU,
> SVEN E OUTROS - NAO, ANDRE, CHRISTIAN E OUTROS - SIM).

Eu estou aprendendo muito com esta discussão e acredito que é totalmente
válida na lista. Para mim a discussão não está fechada.

Christian

------------------------------ 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