Sobrecarga é um exemplo de polimorfismo  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
nilolima
JavaChild
[Avatar]

Membro desde: 09/07/2005 05:05:19
Mensagens: 136
Localização: Acre
Offline

Galera estou ministrando um treinamento de JAVA e fui perguntado se sobrecarga era exemplo de polimorfismo. De cara disse que não, por que quando usamos sobrecarga não existe ligação dinâmica. Também nunca li que sobrecarga fosse exemplo de polimorfismo, diante da insistência do aluno disse que iria pesquisar e levar uma explicação na próxima aula. Pesquisei nos meus livros e não achei nada falando que sobrecarga era exemplo de polimorfismo, mas quando dei uma googleada olha só o que achei:

http://www.ic.unicamp.br/~cmrubira/aacesta/java/javatut11.html
?SOBRECARGA ( MÉTODOS E OPERADORES)

Este tipo de polimorfismo permite a existência de vários métodos de mesmo nome, porém com assinaturas levemente diferentes ou seja variando no número e tipo de argumentos e no valor de retorno. Ficaria a cargo do compilador escolher de acordo com as listas de argumentos os procedimentos ou métodos a serem executados. ?

http://pt.wikipedia.org/wiki/Sobrecarga
?Sobrecarga de método, este tipo de polimorfismo permite a existência de vários métodos de mesmo nome, porém com assinaturas levemente diferentes?

Eu continuo achando que sobrecarga não é um exemplo de polimorfismo por não usa ligação dinâmica. Estou errado?

Tecnólogo em Sistemas para Internet - CEFETPB
[MSN]
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

Sobrecarga pode ser considerado um tipo de polimorfismo se considerarmos que existem dois tipos de polimorfismo: Estático, e Dinamico. Sobrecarga , shadowing, auto-boxing e generics são exemplos de polimorfismo estático.

Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
ercardoso
Debugger
[Avatar]

Membro desde: 28/09/2006 15:51:27
Mensagens: 59
Offline

polimorfismo.. "muitas formas" sobrecarga eh um exemplo disso!

http://vertocardoso.wordpress.com
[Email] [WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20587
Localização: Curitiba/PR
Offline

Acho que é importante definir bem o conceito que você adotará de polimorfismo.

Se for um conceito amplo, simplesmente "várias formas" explique sobre o polimorfismo estático e dinâmico e considere sobrecarga um tipo de polimorfismo.

Entretanto, mesmo você pode definir polimorfismo como "contextual". Ou seja, o mesmo método muda de comportamento de acordo com seu contexto, ou melhor, de acordo com a classe que o implementa.

Nesse caso, sobrecarga não seria polimorfismo, uma vez que a assinatura do método é diferente e, portanto, trata-se de métodos diferentes. O mesmo vale para shadowing e auto-boxing.

Não é a primeira vez que vejo esse assunto no GUJ. Acho também que não custaria perguntar ao aluno onde ele ouviu a definição de sobrecarga como polimorfismo e dar uma olhada no que diz o autor.
[WWW]
Fabiano
JavaBaby
[Avatar]

Membro desde: 21/07/2003 08:37:12
Mensagens: 77
Localização: Joinville/SC
Offline

Eu já teria respondido na lata que sobrecarga é um exemplo de polimorfismo sim. Muito bom o questionamento e principalmente a sua explicação Vini. Nunca tinha pensado que poderíamos explicar polimorfismo "polimorficamente" . O legal é mostrar as duas formas, senão sempre vai surgir aquelas discussões inúteis entre os que estão aprendendo de "é" ou "não é"...
[ICQ]
K-robson
What is classpath?

Membro desde: 27/04/2007 18:42:32
Mensagens: 7
Localização: São Paulo
Offline

tava com essa dúvida a um bom tempo, valeu pelos esclarecimentos!
[MSN]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team