Pessoal, as DUAS versoes sao validas.
Vamos comecar novamente esse assunto? Estah sempre aparecendo nessa lista. Alias, nao 
somente nessa, em qualquer comunidade OO que eu conheco esse assunto eh recorrente. E 
eh baseado mais eh Fe' do que em argumentos tecnicos.

O fato eh que existem varias ideias e varias possiveis respostas, e TODAS tem suporte 
na bibliografia, por autores de grande renome e respeito.
Ou seja, nenhuma posicao eh a verdade absoluta.

Soh para dar mais uma referencia, que nao eh nada definitiva, mas pelo menos eh bem 
imparcial, pois usa a palavra polimorfismo para tudo; definindo nao duas, mas quatro 
formas diferentes de polimorfismo... 

http://www.javaworld.com/javaworld/jw-04-2001/jw-0413-polymorph_p.html


Eh como querer discutir se churrasco eh melhor que feijoada. Escolha a sua preferencia 
e pronto, sabendo que ela nao eh a "verdade" ou "no verdadeiro sentido" e coisas assim.

Mas um bom churrasquinho dah de 10 em qquer feijoada  ;-)

Silvio

On Tue, 26 June 2001, Sven van �t Veer wrote:

> 
> > Ha controversias...
> > Polimorfismo no sentido puro da palavra se refere mesmo ao overriding, 
> > ou a capacidade de responder de forma diferente a mesma msg, sendo q 
> > uma msg se refere ao nome + parametros, ou seja, mesmo nome e outros 
> > parametros nao eh polimorfismo.
> 
> Concordo.
> 
> Vamos esclarear de novo.
> Polimorfismo � a capacidade de um object de tomar uma 'forma' (pode at� 
> ler disfar�ar) diferente. Poli = muitas Morph= mudar de forma.
> public void someMethod(int i)
> public void someMethod(int i, String j) throws Exception
> apesar de ter o mesmo nome s�o DUAS METHODOS COMPLETAMENTE DIFERENTE e 
> porem n�o � polimorfismo pois n�o � um object tomando uma outra forma.
> 
> interface A{
> }
> interface B{
> }
> class Base implements A{
> }
> class Foo extends Base implements B{
> }
> class Bar extends Foo{
> }
> class FooBar extends Foo{
> }
> 
> agora tudo isso pode:
> A a = new FooBar()
> B b = new FooBar()
> Bar bar = new FooBar()
> Foo foo = new FooBar()
> 
> bar = foo
> a = bar
> 
> etc
> 
> >> Overrride significa sobreposicao de metodos. Quando voce herda uma 
> >> classe,
> >> por exemplo, e a sua superclasses tem um metodo com o mesmo nome da
> >> sub-classe. Para distinguir, voce faz assim : 
> > 
> leia method com mesmo signature. Quer dizer mesmos parametros e mesmo 
> throws clause. (na verdade o throws clause pode mudar se a exception 
> thrown � uma subclasse do exception thrown no methodo que � overriden.
> 
> 
> ------------------------------ 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] 
> -------------------------------------------------------------------------



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