Estou trabalhando em um projeto que utiliza Swing e o Netbeans. Ate aí nenhuma novidade... mas no decorrer da criação e do uso dos JComponents notei que o netbeans cria algumas coisas bizarras e outras legais... Tudo pra deixar o usuário (eu) feliz com as pedras no sapato da JTable. Bem o interessante não é nada disso... vou ao exemplo que facilitará.
Suponha que você tenha uma classe:
public class ClasseA{
public void fazNada(){
System.out.println("nada");
}
}
E uma classe de teste:
public class TestClasseA{
public static void main(String[] args){
ClasseA a = new ClasseA();
a.fazNada();
}
}
O resultado será simples um nada
Bem e se eu quisesse alterar o comportamento do método fazNada... normalmente o que as pessoas fazem é (além de seguir um dos Patterns do GOF... esqueci o nome :S ) criar uma outra classe herdando da ClasseA e sobreescrevendo o comportamento para o método fazNada.
O que notei que o netbeans faz é o seguinte:
Bem e se eu quisesse alterar o comportamento do método fazNada... normalmente o que as pessoas fazem é (além de seguir um dos Patterns do GOF... esqueci o nome :S ) criar uma outra classe herdando da ClasseA e sobreescrevendo o comportamento para o método fazNada.
O que notei que o netbeans faz é o seguinte:
public class TestClasseA{
public static void main(String[] args){
ClasseA a = new ClasseA(){
public void fazNada(){
System.out.println("tudo");
}
};
a.fazNada();
}
}
Isso mesmo sobreescrevendo-a na própria "instanciação"... a essa técnica, ou jeito, penso que o nome correto é classe anónima... (já vi vários usos para classes anónimas, mas esse foi novo.)
Nenhum comentário:
Postar um comentário