谁调用了我(class function)?(转帖)

转着 http://www.cnblogs.com/dotjava/articles/1264954.html

 

java开发中经常用到日志组件,它们打出来的信息比较神奇,居然知道是谁调用了自己,从网上搜到了其原理,其实很简单,代码如下:
 
StackTraceElement stack[] = (new Throwable()).getStackTrace(); for (int i = 0; i < stack.length; i++) { StackTraceElement ste = stack[i]; System.out.println(i + "--"+ste.getClassName()); System.out.println(i + "--"+ste.getMethodName()); System.out.println(i + "--"+ste.getFileName()); System.out.println(i + "--"+ste.getLineNumber()); }

你可能感兴趣的:(function,Class)