詳解Java 打印堆棧的幾種方法
java 中可以通過 eclipse 等工具直接打印堆棧,但是對于某些環(huán)境中無法使用 eclipse 工具時,需要知道堆棧,如何處理呢?
介紹3種方法供選擇:
方法一:
package name.xu; public class CallStack { public static void printCallStatck() { Throwable ex = new Throwable(); StackTraceElement[] stackElements = ex.getStackTrace(); if (stackElements != null) { for (int i = 0; i < stackElements.length; i++) { System.out.print(stackElements[i].getClassName()+"/t"); System.out.print(stackElements[i].getFileName()+"/t"); System.out.print(stackElements[i].getLineNumber()+"/t"); System.out.println(stackElements[i].getMethodName()); System.out.println("-----------------------------------"); } } } }
方法二:
Exception e = new Exception("this is a log"); e.printStackTrace();
方法三:
String fullStackTrace = org.apache.commons.lang.exception.ExceptionUtils.getFullStackTrace(e)
方法四:
Thread.currentThread().getStackTrace()
個人推薦,方法一,原因:簡單易用,速度快
參考資料:
1、http://blog.csdn.net/chief1985/article/details/4618492
2、http://www.cnblogs.com/flyme/archive/2012/04/10/2440029.html
3、http://stackoverflow.com/questions/1069066/get-current-stack-trace-in-java【推薦仔細看看】
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java設計模式之策略模式_動力節(jié)點Java學院整理
策略模式是對算法的封裝,把一系列的算法分別封裝到對應的類中,并且這些類實現(xiàn)相同的接口,相互之間可以替換。接下來通過本文給大家分享Java設計模式之策略模式,感興趣的朋友一起看看吧2017-08-08Java并發(fā)編程學習之Unsafe類與LockSupport類源碼詳析
這篇文章主要給大家介紹了關(guān)于Java并發(fā)編程學習之Unsafe類與LockSupport類源碼的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧2018-06-06解決mybatisPlus 中的field-strategy配置失效問題
這篇文章主要介紹了解決mybatisPlus 中的field-strategy配置失效問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02java中進制的轉(zhuǎn)換,Byte與16進制的轉(zhuǎn)換方法
下面小編就為大家?guī)硪黄猨ava中進制的轉(zhuǎn)換,Byte與16進制的轉(zhuǎn)換方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11