Criando um método "Radar" em Java

Publicado por Diogo G. Zanetti em 04/02/2009

[ Hits: 6.165 ]

Blog: http://exadmax.googlepages.com

 


Criando um método "Radar" em Java



Método radar é um método que sabe onde está sendo utilizado e quando. Um simples exemplo:

public class ClasseUsurpadora{
   private Adivinha a;

   public void main(String[] args) {

      a.executeiAqui();

   }
}

Você pergunta como o método irá funcionar sem os parâmetros de entrada, pois poderíamos passar o nome da classe, mas é dispensável.

Na classe "Adivinha" faça isto:

public class Adivinha {
   public void executeiAqui(){
      StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
      StackTraceElement last_stack_trace_element = stackTraceElements[stackTraceElements.length-1];
      System.out.println ("Executei " + last_stack_trace_element.getMethodName () + " em " + last_stack_trace_element.getClassName () + " na linha " + last_stack_trace_element.getLineNumber());
   }
}

Não é necessário import antes que você pergunte.

Utilidades disso? Inúmeras, vou citar uma simples: sabe quando temos "objetos" que acessam a base de dados "hora" em um contexto hora em outro? Esta classe "DAO" poderá ser instanciada neste objeto, com uma lista de objetos na classe "adivinha" e o identificador, temos como chavear.

Outra utilidade é um gerenciador de erros, pois posso descobrir em qual linha executou.

Outras dicas deste autor

Adicionando Kubuntu e Xubuntu no Ubuntu

Resolva problemas de pacotes com automatix no Ubuntu / Debian

Limpeza automática de bibliotecas inúteis em seu Linux Debian / Ubuntu

Setando seu locale

Fazendo a placa AVA 1502 rodar no Linux

Leitura recomendada

JSTL - Problemas com tags

Raycasting Basics with JavaScript [Curso]

Interface de desenvolvimento Open Source

Configurando dependências para usar CDI/Weld e JBoss

Instrução for( ; ; ) aprimorada no Java 1.5

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts