Ola,

É, foi exatamente isso que eu tirei como conclusão. Até que é
interessante este aspecto, pois podemos criar instancias com metodos
diferentes em tempo de execução. Realmente para se criar um objeto
serializavel é uma boa saida, mas acho meio "anti-estético" criar
classes desta maneira, a nao ser que voce nao saiba em tempo de
compilação que cara ela deve ter.

Jose Antonio

Rodrigo B Mazzilli wrote:
> 
> Pessoal
> 
> "Inner classes" e "anonymous inner classes" são uma dúvida freqüente entre os
> novatos em Java.
> É de fato um aspecto curioso de Java e que merece um estudo cauteloso.
> 
> Inner classes são classes declaradas dentro de outra classe. Anonymous inner
> classes são classes declaradas dentro de outra classe sem nome !!
> Vejamos o exemplo:
> 
> public class PrimeiraClasse {
> ...
>     public Teste getTeste() {
>         ...
>         return new Teste() {
>             public void printTeste() {
>                 System.out.println("Sobreescrevendo método printTeste da classe
> Teste de uma inner class");
>             }
>         }
>     }
> }
> 
> Explicando a confusão acima. Uma classe "normal" PrimeiraClasse possui um método
> chamado getTeste(). Esse método retorna um objeto da classe Teste. O que é feito
> aqui é que no retorno de getTeste(), o return cria um objeto de uma classe que
> não é Teste, mas extende a classe Teste. Esse objeto é de uma classe que não tem
> nome(!). No meu exemplo, essa classe Teste extendida, sobrescreve ou implementa o
> método printTeste().
> 
> Isso gera dois arquivos: PrimeiraClasse.class e PrimeiraClasse$1.class
> Além disso, podemos ter static inner classes. A diferença é que em static inner
> classes, o javac não cria uma referência à classe pai. Isso é útil por exemplo
> quando vamos serializar um obejto e o enviarmos pela rede. Se mantermos uma
> refeência a classe pai, estaremos serailizando toda a classe pai e outra tralhas.
> :)
> 
> Espero que tenha resolvido o mistério das classes$n...
> 
> Rodrigo
>

    --------------------------- 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]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    ---------------------------------------------------------------------

Responder a