el 2007-10-20 06:45:13 - Secciones: - Enlace permanente: 796With the next code you'll be able to know the calling hierarchy at runtime, or, in layman's words, who the heck is calling your code while the program is running. It has a problem, tough: it only works for Java 5 or better.
public class Llamadas
{
static public void fin()
{
StackTraceElement trace[] = Thread.currentThread().getStackTrace();
for (StackTraceElement St : trace)
{
System.out.println(St);
}
}
static public void salto()
{
fin();
}
public static void main(String[] args)
{
salto();
}
}
Should print something like...
java.lang.Thread.getStackTrace(Unknown Source)
pruebas.Llamadas.fin(Llamadas.java:7)
pruebas.Llamadas.salto(Llamadas.java:16)
pruebas.Llamadas.main(Llamadas.java:21)
The code is extremely simple: the main class calls salto, who itself calls the fin method. This fin method contains a foreach wich prints the return from a call to getStackTrace, the subroutine call stack.
Saiyine recommends the easiest way to earn money with your web: get paid just by having some links! Click this button to check it out.

Varios ejemplos de lo que buscaban visitantes recientes: