private void printInfo() {
Throwable ex = new Throwable();
StackTraceElement[] stackElements = ex.getStackTrace();
if (stackElements != null) {
for (int i = 0; i < stackElements.length; i++) {
StackTraceElement stackTraceElement = stackElements[i];
String output = String.format("%s():%s, %s (%s)",stackTraceElement.getMethodName(), stackTraceElement.getLineNumber(),getSimpleName(stackTraceElement.getClassName()),getPackageName(stackTraceElement.getClassName()));
System.out.println(output);
}
}
}
private String getSimpleName(String className) {
// TODO Auto-generated method stub
return className.substring(className.lastIndexOf('.') + 1);
}
private String getPackageName(String className) {
// TODO Auto-generated method stub
return className.substring(0,className.lastIndexOf('.'));
}
Java打印調用堆棧的方法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.