Criando um método "Radar" em Java

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

[ Hits: 7.353 ]

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

Resolva problemas de pacotes com automatix no Ubuntu / Debian

Knoppix para deficientes visuais

Evitando os dois carregamentos de JSF (JavaServer Faces)

Setando seu locale

Resolvendo o chato problema de lock do seu Eclipse

Leitura recomendada

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

Identificando SO através da linguagem Java

Raycasting Basics with JavaScript [Curso]

Fazendo o Apache Tomcat 6 funcionar no Debian Squeeze

Resolvendo problemas do Eclipse no Ubuntu

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts