本文研究的主要是Java StackTraceElement的相关内容,具体介绍如下。
package com.demo.test; public class StackTraceDemo { public static void testA() { testB(); } public static void testB() { StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace(); System.out.println("-------> StackTraceElement[]"); for (int i = 0; i < stackTraceElements.length; i++) { System.out.println("-------> " + i); System.out.println(stackTraceElements[i]); System.out.println("StackTraceElement.getClassName() => " + stackTraceElements[i].getClassName()); System.out.println("StackTraceElement.getFileName() => " + stackTraceElements[i].getFileName()); System.out.println("StackTraceElement.getLineNumber() => " + stackTraceElements[i].getLineNumber()); System.out.println("StackTraceElement.getMethodName() => " + stackTraceElements[i].getMethodName()); System.out.println("StackTraceElement.isNativeMethod() => " + stackTraceElements[i].isNativeMethod()); } } public static String getMethodName() { StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace(); if(stackTraceElements.length > 2) { return stackTraceElements[2].getMethodName(); } return null; } public static void main(String[] args) { testA(); System.out.println("\nthis's method name is " + getMethodName()); } }
-------> StackTraceElement[]
-------> 0
java.lang.Thread.getStackTrace(Unknown Source)
StackTraceElement.getClassName() => java.lang.Thread
StackTraceElement.getFileName() => null
StackTraceElement.getLineNumber() => -1
StackTraceElement.getMethodName() => getStackTrace
StackTraceElement.isNativeMethod() => false
-------> 1
com.demo.test.StackTraceDemo.testB(StackTraceDemo.java:10)
StackTraceElement.getClassName() => com.demo.test.StackTraceDemo
StackTraceElement.getFileName() => StackTraceDemo.java
StackTraceElement.getLineNumber() => 10
StackTraceElement.getMethodName() => testB
StackTraceElement.isNativeMethod() => false
-------> 2
com.demo.test.StackTraceDemo.testA(StackTraceDemo.java:6)
StackTraceElement.getClassName() => com.demo.test.StackTraceDemo
StackTraceElement.getFileName() => StackTraceDemo.java
StackTraceElement.getLineNumber() => 6
StackTraceElement.getMethodName() => testA
StackTraceElement.isNativeMethod() => false
-------> 3
com.demo.test.StackTraceDemo.main(StackTraceDemo.java:32)
StackTraceElement.getClassName() => com.demo.test.StackTraceDemo
StackTraceElement.getFileName() => StackTraceDemo.java
StackTraceElement.getLineNumber() => 32
StackTraceElement.getMethodName() => main
StackTraceElement.isNativeMethod() => falsethis's method name is main
以上就是本文关于Java StackTraceElement实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
本文向大家介绍Java WebService 简单实例(附实例代码),包括了Java WebService 简单实例(附实例代码)的使用技巧和注意事项,需要的朋友参考一下 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。 一、准备工作(以下为本实例使用工具) 1、MyEclipse10.7.1 2、JDK 1.6.0_22 二、创建服务端 1、创建【Web Ser
本文向大家介绍springboot + swagger 实例代码,包括了springboot + swagger 实例代码的使用技巧和注意事项,需要的朋友参考一下 swagger用于定义API文档。 好处: 前后端分离开发 API文档非常明确 测试的时候不需要再使用URL输入浏览器的方式来访问Controller 传统的输入URL的测试方式对于post请求的传参比较麻烦(当然,可以使用postma
本文向大家介绍Android实现webview实例代码,包括了Android实现webview实例代码的使用技巧和注意事项,需要的朋友参考一下 webview是一个很简单的功能,代码没有什么逻辑上的难度,只是需要注意权限上的问题。其实在安卓编程的过程当中,权限问题可以算是出现的比较多的BUG。 1.MainAct 2.最重要的是在manifest中添加权限,否则是无法显示的。 以上就是本文的全部内
本文向大家介绍Python 实现链表实例代码,包括了Python 实现链表实例代码的使用技巧和注意事项,需要的朋友参考一下 Python 实现链表实例代码 前言 算法和数据结构是一个亘古不变的话题,作为一个程序员,掌握常用的数据结构实现是非常非常的有必要的。 实现清单 实现链表,本质上和语言是无关的。但是灵活度却和实现它的语言密切相关。今天用Python来实现一下,包含如下操作: 生成这样的一个方
本文向大家介绍Vue表单实例代码,包括了Vue表单实例代码的使用技巧和注意事项,需要的朋友参考一下 什么是 Vue.js? Vue.js 是用于构建交互式的 Web 界面的库。 Vue.js 提供了 MVVM 数据绑定和一个可组合的组件系统,具有简单、灵活的 API。 Vue.js 特点 简洁: HTML 模板 + JSON 数据,再创建一个 Vue 实例,就这么简单。 数据驱动: 自动追踪依赖的
本文向大家介绍PHP多态代码实例,包括了PHP多态代码实例的使用技巧和注意事项,需要的朋友参考一下 多态定义:只关心一个接口或者基类,而不关心一个对象的具体类。(同一类型,不同结果) 这里两个例子: 第一个,我们发现,基类定义了标准,子类进行了自我规则的实现。这是多态的一个要求。同时,这是满足重写;实际上这是不同类的不同表现;没有严格满足一个接口,或者基类编程。因为你调用的时候不是 stu->sh