� isso mesmo. Temos um m�todo em comum o qual ser� invocado dinamicamente.  
Mas em determinado momento, querei lan�ar m�o de particularidades de cada 
classe filha.  Quero fazer isso sem ter um overhead devido ao cast.

Standing by...  Bruno Moreno.


>From: Eduardo Issao Ito <[EMAIL PROTECTED]>
>To: Bruno Moreno <[EMAIL PROTECTED]>
>CC: [EMAIL PROTECTED]
>Subject: Re: Como fazer um cast din�mico?
>Date: Mon, 31 May 1999 13:11:09 -0300
>
>
>Primeiro, vamos ver se eu entendi.
>A sua situacao e' a abaixo?
>
>
>class SuperClasse {
>       SuperClasse m();
>}
>
>class ClasseA extends SuperClasse {
>       SuperClasse m() {
>               return new ClasseA();
>       }
>}
>
>class ClasseB extends SuperClasse {
>       SuperClasse m() {
>               return new ClasseB();
>       }
>}
>
>
>Bruno Moreno wrote:
> >
> >   Antes de mais nada, gostaria de agradecer sua aten��o bem como a de 
>Rafael
> > Chaves.  Infelizmente meu problema � mais s�rio.
> >   Tenho conhecimento das maneiras tradicionais de se fazer cast 
>din�mico, ou
> > seja, posso utilizar uma interface, uma superclasse ou, at� mesmo, 
>"simular"
> > um cast din�mico atrav�s de overload de m�todos.
> >   Agora, suponha que tenho v�rias classes com um mesmo m�todo comum que
> > retorne uma super-classe.
> >    ex: superClass xx.metodo(int j);
> >        superClass yy.metodo(int j);
> >        ...
> >   Este m�todo � chamado in�meras vezes me auxiliando na constru��o
> > de um array.
> >
> >       for (int i=0; i<800000; i++)
> >       {
> >         myArray[i]  = xx.metodo(i);
> >       }
> >
> >      ou
> >
> >       for (int i=0; i<800000; i++)
> >       {
> >         myArray[i]  = yy.metodo(i);
> >       }
> >
> >   Suponha tamb�m que n�o me interesse trabalhar com a superClasse, mas 
>sim,
> > com as suas filhas. Sendo assim, teria que fazer mais 800000 itera��es
> > aplicando um cast.  Com o  objetivo de eliminar este cast, gostaria de
> > executar um cast na chamada din�mica deste m�todo chamado metodo.
> >
> > Desculpe-me se n�o fui muito claro.
> >
> > Eu j� possuo este m�todo implementado mas, infelizmente, o overhead 
>ainda
> > exite.
> >
> > Obrigado,
> >    Bruno Moreno
> >
> > >From: Eduardo Issao Ito <[EMAIL PROTECTED]>
> > >To: Bruno Moreno <[EMAIL PROTECTED]>
> > >CC: [EMAIL PROTECTED]
> > >Subject: Re: Como fazer um cast din�mico?
> > >Date: Thu, 27 May 1999 16:02:55 -0300
> > >
> > >
> > >Se voce sabe a classe a classe que esta sendo retornada basta fazer um
> > >cast normal.
> > >Caso contrario voce pode usar o operador instanceof para determinar a
> > >classe.
> > >
> > >Mas o jeito mais facil e elegante e voce declarar a variavel apenas 
>como
> > >uma interface e chamar os metodos do objeto apenas pela interface.
> > >
> > >Bruno Moreno wrote:
> > > >
> > > > Senhores integrantes da lista,
> > > >
> > > >   Gostaria de saber se algu�m alguma vez fez um cast din�mico.  
>Estou
> > > > fazendo um m�todo gen�rico que em determinado momento, invoca outro
> > >m�todo
> > > > dinamicamente.  Agora, desejava pegar o meu valor de retorno que � 
>uma
> > > > interface e "casti�-la".
> > > >   Lan�ando m�o da classe Class e Method eu consigo efetuar a 
>primeira
> > >etapa
> > > > mas a �ltima, o cast din�mico, n�o fa�o a m�nima id�ia de como
> > >implementar.
> > > >
> > > > Obrigado pela aten��o,
> > > >
> > > >    Bruno Moreno
> > > >
> > > > ______________________________________________________
> > > > Get Your Private, Free Email at http://www.hotmail.com
> > > > * Para nao receber mais e-mails da lista, acesse
> > ><http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu
> > >e-mail, escolha a lista <[EMAIL PROTECTED]> e de um <submit>.
> > >
> > >--
> > >Eduardo Issao Ito <[EMAIL PROTECTED]>
> > >Eurosoft Consultoria <http://www.euroconsult.com.br>
> > >Rua Marina Saddi Haidar, 176 - S�o Paulo - SP - Brasil
> > >CEP 04650-050
> > >TEL: +55 11 524-8022
> > >FAX: +55 11 524-0408
> > >* Para nao receber mais e-mails da lista, acesse
> > ><http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu
> > >e-mail, escolha a lista <[EMAIL PROTECTED]> e de um <submit>.
> >
> > ______________________________________________________
> > Get Your Private, Free Email at http://www.hotmail.com
>
>--
>Eduardo Issao Ito <[EMAIL PROTECTED]>
>Eurosoft Consultoria <http://www.euroconsult.com.br>
>Rua Marina Saddi Haidar, 176 - S�o Paulo - SP - Brasil
>CEP 04650-050
>TEL: +55 11 524-8022
>FAX: +55 11 524-0408
>* Para nao receber mais e-mails da lista, acesse 
><http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu 
>e-mail, escolha a lista <[EMAIL PROTECTED]> e de um <submit>.


______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
* Para nao receber mais e-mails da lista, acesse 
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, escolha a 
lista <[EMAIL PROTECTED]> e de um <submit>.

Responder a