Exatamente , a utilizacao de casting dentro do if
ficaria algo mais ou menos como :
        if (o instanceof GoodDay) {
            GoodDay gd=(GoodDay)o;
        } else if (o instanceof GoHome) {
            GoHome gh=(GoHome)o;
        }
onde "(GoodDay)" e "(GoHome)" sao os castings que
indicam que o Object o deve ser "convertido" ora para
GoodDay ora para GoHome .


 --- Claudio Miranda <[EMAIL PROTECTED]> escreveu: > 
>       Pessoal, basta retornar Object e depois colocar
> casting:
> 
>       Object getSomething() {
>           if (todayIsAGoodDay) {
>               return new GoodDay();
>           } else {
>               return new GoHome();
>           }
>       }
> 
>       Object o = getSomething();
>       if (o instanceof GoodDay) {
>           // faça algo
>       } else if (o instanceof GoHome) {
>           // faça outra coisa
>       }
> 
> 
> Claudio Miranda
> 
> 
> Wild Boar Wannabe wrote:
> > 
> >  Ok , toda a referencia a um objeto eh o mesmo que
> um
> > ponteiro . Mas existe uma grande diferenca entre
> os
> > ponteiros de C onde um ponteiro pode apontar para
> > qualquer coisa , jah em java somente uma
> referencia a
> > Object pode "apontar" para (referenciar) qualquer
> > coisa .
> > 
> >  --- "Paulo R. Panhoto"
> > <[EMAIL PROTECTED]> escreveu: >
> > Existem ponteiros em java sim, embora o suporte
> > > a ponteiros seja limitado.. Caso contrário não
> > > haveria sentido existir "NullPointerException".
> > >
> > >     Qualquer variável que não seja de tipo
> primitivo
> > > (ou seja, qualquer objeto) é passado por
> > > referência.
> > >
> > > Wild Boar Wannabe wrote:
> > >
> > > >  Creio que seria somente utilizando um vetor
> de
> > > > objetos mesmo , uma vez que java nao tem
> ponteiros
> > > .
> > > >
> > > >  --- Luis Cabral <[EMAIL PROTECTED]>
> > > escreveu:
> > > > > Olá
> > > > >
> > > > > Tenho uma dúvida, que ao mesmo tempo prova
> > > > > que em Java não existe passagem de
> parâmetros
> > > > > por referência...
> > > > >
> > > > > Como fazer um método retornar 2 objetos
> > > > > *diferentes*?
> > > > > Em C por exemplo, eu poderia usar um
> parâmetro
> > > > > por referência para que fosse retornado nele
> um
> > > > > valor:
> > > > >
> > > > > int funcao(int *r1)
> > > > > // esta funcao retorna 2 inteiros: 10 e 20
> > > > > {
> > > > > *r1 = 10;
> > > > > return 20;
> > > > > }
> > > > >
> > > > > E em Java?
> > > > >
> > > > > Uma opçao seria retornar um array, mas sendo
> > > > > dois objetos diferentes, precisaria ser um
> array
> > > de
> > > > > object's,
> > > > > ou tem outra forma?
> 
>
_________________________________________________________
> 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] 
>
-------------------------------------------------------------------------
>  

_______________________________________________________________________________________________
Yahoo! GeoCities
Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil 
e grátis!
http://br.geocities.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] 
-------------------------------------------------------------------------

Responder a