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等日誌框架中是不是也是用此方式獲取相關信息的, 待有時間再研究