您的位置:首页 > 编程语言 > Java开发

JAVA 获取当前的函数名,当前运行的类名

2015-04-15 20:08 323 查看
原文地址:http://blog.sina.com.cn/s/blog_7cfc207d01019991.html

有时候我们需要在程序中获取当前运行的函数名,如何简单的做到这点呢?我们可以用getStackTrace轻松搞定。

一提到getStatckTrace多数人会联想到Thowable中的getStackTrace方法。的确,也正是发现 StackTraceElement中有getMethod方法,使我找到了此问题的突破口。

在Java JDK 5中,有三个类拥有getStackTrace方法,分别是ThreadInfo, Thread和Throwable。此处,我们用Thread.currentThread()中的StackTraceElement来获取当前函数名。具体代码如下:

1.获取当前函数名:Thread.currentThread().getStackTrace()[2].getMethodName();

2.获取当前类名:Thread.currentThread().getStackTrace()[2].getClassName();

例:ip.or.sk.common.SearchAction

3.获取当前类的文件名:Thread.currentThread().getStackTrace()[2].getFileName();

例:SearchAction.java
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: