java打印堆栈信息_Java 打印堆栈的几种方法
java 中可以通过 eclipse 等工具直接打印堆栈,但是对于某些环境中无法使用 eclipse 工具时,需要知道堆栈,如何处理呢?
介绍3种方法供选择:
方法一:
packagename.xu;
public classCallStack {
public static voidprintCallStatck() {
Throwable ex = newThrowable();
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 【推荐仔细看看】
java打印堆栈信息_Java 打印堆栈的几种方法相关推荐
- java 获取区间随机数_Java获取随机数的3种方法
主要介绍了Java获取随机数的3种方法,主要利用random()函数来实现 方法1 (数据类型)(最小值+Math.random()*(最大值-最小值+1))例: (int)(1+Math.rando ...
- java 获取区间随机数_Java获取随机数的几种方法
随机数在实际中使用很广泛,比如要随即生成一个固定长度的字符串.数字.或者随即生成一个不定长度的数字.或者进行一个模拟的随机选择等等.Java提供了最基本的工具,可以帮助开发者来实现这一切. 一.Jav ...
- java多线程传值覆盖_Java 多线程传值的四种方法
其实大家都知道多线程传值有三种方式: 1:通过构造方法传递数据 2:通过变量和方法传递数据 3:通过回调函数传递数据 那么博主有个非常变态的需求,所以找出了第四种实现方式,先看效果图: 动态Cron4 ...
- java线程异步传值_Java 多线程传值的四种方法
Java 多线程传值的四种方法 作者: sunjs 更新时间:2020-09-11 15:20:16 原文链接 其实大家都知道多线程传值有三种方式: 1:通过构造方法传递数据 2:通过变量和方法传递数 ...
- java字符串abc反转_JAVA字符串反转的三种方法
方法一:使用StringBuilder import java.util.Scanner; public class StrReversal { public static void main(Str ...
- java list for循环_Java List遍历的3种方法
Java List遍历的3种方法 1. Iterator遍历list集合 List list=new ArrayList(); list.add("java1"); list.ad ...
- java 结束 线程结束_Java结束线程的三种方法(爱奇艺面试)
线程属于一次性消耗品,在执行完run()方法之后线程便会正常结束了,线程结束后便会销毁,不能再次start,只能重新建立新的线程对象,但有时run()方法是永远不会结束的.例如在程序中使用线程进行So ...
- java实现自动任务_Java实现定时任务的三种方法
普通thread 这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果.这样可以快速简单的实现,代码如下: public class Tas ...
- java怎么调用存储过程_Java调用存储过程的2种方法
creat proc proc_select @pid varchar(20) @address varchar(20) output as select @address=address from ...
- java字符串比大小_Java字符串比较(3种方法)
字符串比较是常见的操作,包括比较相等.比较大小.比较前缀和后缀串等.在 Java 中,比较字符串的常用方法有 3 个:equals() 方法.equalsIgnoreCase() 方法. compar ...
最新文章
- 使用 Boost.MPI 的 all_reduce() 计算最小值的示例
- Java黑皮书课后题第8章:*8.8(所有最近的点对)修改程序清单8-3,找出所有所有具有最小距离的点对。下面是一个运行示例
- AC automation 模板
- pythonpy文件打包成exe软件
- 基于JAVA+SpringMVC+MYSQL的医院分诊挂号管理系统
- 【Python-3.5】matplotlib绘制气温折线图
- java 构建 数字 list_数字全排列返回list的list:java实现
- java mac算法_银行业加密算法,MAC算法算法(java-国密)
- 源码下载地址及各类资源站点
- 安卓TV应用 Hello Word - 怎样新建一个Android TV 项目
- 想转行程序员,参加java培训班真的有用吗?
- HDU-4539 郑厂长系列故事——排兵布阵 状态压缩DP Or 最大团
- 如果你想要做好抖音直播间需要注意的其他事项(三)
- SOIC8E (EXPOSED PAD)
- 孩子该不该学编程?学编程有用吗?
- 这款小程序 能让你和孙悟空一样 可以七十二变
- Spark之sbt安装
- oracle job enq tx,【学习笔记】Oracle等待事件 enq:TX–allocate ITL entry产生原因和解决办法...
- [创新工具和方法论]-02- DOE实验设计步骤
- commons-lang3
热门文章
- java 定时任务注解
- c语言 鼠标宏,鼠标宏设置软件下载 Mini Mouse Macro(鼠标宏设置工具) v7.2.0.0 免费安装版 下载-脚本之家...
- API接口出来了,填写客户收货地址不用烦,自动填写不出差错
- abaqus2018安装教程win10_win10怎么安装abaqus v6.12_win10系统abaqus v6.12安装详细教程
- 如何将大华设备通过大华SDK接入Demo工具测试视频接入?
- python blp模型 估计_BLP模型
- Hydra(弱密码爆破)使用教程
- 弱密码、未授权加固/修复建议
- 康威生命游戏-蓝桥杯java
- 截图工具-Excel加载宏(图片大小可调)