java 获取 正在执行的方法名

//获取调用该方法的方法名....
        String method = Thread.currentThread().getStackTrace()[2].getMethodName();

//获取正在执行方法的方法名....
        String method = Thread.currentThread().getStackTrace()[1].getMethodName();

原文地址:https://www.cnblogs.com/whm-blog/p/8343599.html

时间: 2024-08-07 12:37:11

java 获取 正在执行的方法名的相关文章

java获取当前执行文件的路径

需要知道执行jar包时,jar包所在的路径. 开始使用了 p.getClass().getResource("/").getPath(); 结果在IDE里面使用是好的,但是在命令行中执行时,会报NullPointerException错误. 接着尝试使用另一种方式, File f = new File(""); String cf = null; try { cf = f.getCanonicalPath(); } catch (IOException e) { e

Android显示Log信息(带行号,类名,方法名)

package com.dylan.testlog; import android.util.Log; public class MyLogger { // private static final String TAG = "MyLogger"; public static boolean DEBUG = true; /** * 显示Log信息(带行号) * @param logLevel 1 v ; 2 d ; 3 i ; 4 w ; 5 e . * @param info 显示的

Java运行时获取当前运行代码类名、方法名

/*    * 1.获取当前运行代码的类名,方法名,行号,主要是通过java.lang.StackTraceElement类 *  * 2. 获取调用者.当前方法名 *   [1]获得调用者的方法名, 同new Throwable *         String _methodName = new Exception().getStackTrace()[1].getMethodName(); *   [0]获得当前的方法名, 同new Throwable *         String _t

获取java中当前运行代码类名,行号,方法名

最近项目在线上出现一个报加密控件输入为空的bug,由于IOS,Android,web端都报,但是没找到原因,因为是偶现,所以为了捕捉这个问题,做出要我们把报错信息传给后台,所以就写一下获取的方法.1.获取方法名:public static String getCurrentMethodName() { int level = 1; StackTraceElement[] stacks = new Throwable().getStackTrace(); String methodName = s

.NET 中获取调用方法名

在写记录日志功能时,需要记录日志调用方所在的模块名.命名空间名.类名以及方法名,想到使用的是反射(涉及到反射请注意性能),但具体是哪一块儿还不了解,于是搜索,整理如下: 需要添加相应的命名空间: using System; using System.Diagnostics; using System.Reflection; 如果仅是获取当前方法名,可以使用如下代码: public static void WriteSysLog(int level, string content) { Metho

ThinkPHP 3.2 中获取所有函数方法名,以及注释,完整可运行

<?php namespace Home\Controller; use Common\Controller\BaseController; class AuthController extends BaseController{ /** * @cc index主页面 */ public function index(){ $modules = array('Home'); //模块名称 $i = 0; foreach ($modules as $module) { $all_controlle

Yii2 获取模块名、控制器名、方法名

Yii2 获取模块名.控制器名.方法名在视图中: 模块名 $this->context->module->id 控制器名 $this->context->id 方法名 $this->context->action->id 在控制器中 模块名 Yii::$app->controller->module->id; 控制器名 Yii::$app->controller->id 方法名 Yii::$app->controller-

使用JVMTI获取Java多线程程序指令执行次序

使用JVMTI获取Java多线程程序指令执行次序 在Java多线程程序中,由于线程调度,指令间的次序在每次运行时都可能不相同,有时候,我们需要得到指令次序,用来分析程序的行为.这样细粒度的底层行为用一般方法很难完成,我们需要借助 JVM Tool Interface,即JVMTI,来帮助我们获取Java虚拟机执行时的信息.本文先介绍编写JVMTI程序的基本框架,然后介绍如何使用JVMTI来获取多线程程序中指令之间的次序. JVMTI简介 JVMTI是用于编写开发与监视工具的编程接口,使用它可以检

java基础知识之一:命名规则(包名、类名、变量名、方法名)

1.包名:包名一般是小写英文字母 2.类名:单词首字母大写 3.变量名: 1) 标识符由字母.数字.下划线"_".美元符号"$"或者人民币符号"¥"组成,并且首字母不能是数字. 2) 不能把关键字和保留字作为标识符. 3) 标识符没有长度限制. 4) 标识符对大小写敏感. 4.方法名:首单词小写,后面单词首字母大写 注意一下,不同变量类型默认的字节存储.Java中小数默认是double类型,例如上面(float)4.5,如果你直接写4.5,会在4