Criando um método "Radar" em Java

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

[ Hits: 7.229 ]

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

Fazendo a placa AVA 1502 rodar no Linux

Resolvendo problemas do Eclipse no Ubuntu

Setando seu locale

Evitando os dois carregamentos de JSF (JavaServer Faces)

Múltiplos portais em Xoops com o mesmo DB

Leitura recomendada

Identificando SO através da linguagem Java

Crash ao executar Eclipse no Fedora 19 x86_64 [Resolvido]

Resolvendo o problema "could not load wizard specified in /wizard.inf" no Ubuntu Hardy

Impressão Java em Linux

Raycasting Basics with JavaScript [Curso]

  

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