public static String getTraceInfo(){
StringBuffer sb = new StringBuffer();
StackTraceElement[] stacks = new Throwable().getStackTrace();
int stacksLen = stacks.length;
sb.append("class: " ).append(stacks[1].getClassName()).append("; method: ").append(stacks[1].getMethodName()).append("; number: ").append(stacks[1].getLineNumber());
return sb.toString();
}
最终是通过StackTraceElement[] stacks = new Throwable().getStackTrace();来实现的
没有研究底层实现, 也不没去看Log4j等日志框架中是不是也是用此方式获取相关信息的, 待有时间再研究