首页 > Java > java教程 > Java中如何获取当前方法的名称?

Java中如何获取当前方法的名称?

DDD
发布: 2024-12-18 17:41:11
原创
795 人浏览过

How Can I Get the Current Method's Name in Java?

获取 Java 中当前方法的名称

开发人员经常寻求方法来检索 Java 中当前执行的方法的名称以进行故障排除或信息目的。虽然存在多种方法,但有些方法比其他方法更高效。

Object.getClass().getEnendingMethod().getName()

一种方法涉及创建一个匿名内部类:

String name = new Object(){}.getClass().getEnclosingMethod().getName();
登录后复制

但是,这种技术有缺点:

  • 它在编译时生成一个新的匿名内部类,导致.class文件创建开销。
  • 它在运行时创建一个未使用的对象实例。

优点:

  • 返回一个java.lang.reflect.Method 对象,提供对方法注解和参数名称的访问。
  • 可以区分同名的方法(重载)。
  • 根据 JavaDoc,它不能抛出 SecurityException,因为内部类使用相同的类加载器加载。

注意: 对于构造函数,请使用 getEnendingConstructor() 代替。在命名方法之外的块中,getEnendingMethod() 返回 null。

虽然此方法是有效的解决方案,但开发人员应在将其用于生产代码之前权衡开销与所需的功能。

以上是Java中如何获取当前方法的名称?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板