【java】获取当前函数的函数名

简介: 【java】获取当前函数的函数名

咱们在写测试用例时,偶尔会使用当前函数作为函数体中的某个标示性字符串的一部分。比如写数据库测试用例时,可以把当前函数名作为建表语句中的表名。


咱们总不能手动写函数名的字符串吧。上干货:


在 Java 中,可以使用 Thread.currentThread().getStackTrace() 方法获取当前函数名。该方法返回一个 StackTraceElement[] 数组,其中包含当前线程的堆栈跟踪。堆栈跟踪中的第一个元素是调用 getStackTrace() 的方法,第二个元素是调用调用 getStackTrace() 的方法的方法,依此类推。因此,要获取当前函数名,只需获取堆栈跟踪中的第二个元素的 getMethodName() 方法的返回值。


以下是获取当前函数名的示例代码:

String currentFunctionName = Thread.currentThread().getStackTrace()[1].getMethodName();


此代码将 currentFunctionName 变量设置为当前函数的名称。

目录
相关文章
|
2月前
|
Java
让星星⭐月亮告诉你,jdk1.8 Java函数式编程示例:Lambda函数/方法引用/4种内建函数式接口(功能性-/消费型/供给型/断言型)
本示例展示了Java中函数式接口的使用,包括自定义和内置的函数式接口。通过方法引用,实现对字符串操作如转换大写、数值转换等,并演示了Function、Consumer、Supplier及Predicate四种主要内置函数式接口的应用。
31 1
|
3月前
|
Java
java基础(11)函数重载以及函数递归求和
Java支持函数重载,即在同一个类中可以声明多个同名方法,只要它们的参数类型和个数不同。函数重载与修饰符、返回值无关,但与参数的类型、个数、顺序有关。此外,文中还展示了如何使用递归方法`sum`来计算两个数之间的和,递归的终止条件是当第一个参数大于第二个参数时。
34 1
java基础(11)函数重载以及函数递归求和
|
2月前
|
Java 编译器 C语言
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
【一步一步了解Java系列】:Java中的方法对标C语言中的函数
30 3
|
4月前
|
Java 调度 Android开发
Android经典实战之Kotlin的delay函数和Java中的Thread.sleep有什么不同?
本文介绍了 Kotlin 中的 `delay` 函数与 Java 中 `Thread.sleep` 方法的区别。两者均可暂停代码执行,但 `delay` 适用于协程,非阻塞且高效;`Thread.sleep` 则阻塞当前线程。理解这些差异有助于提高程序效率与可读性。
87 1
|
5月前
|
存储 Java 编译器
Java中ArrayList的常用函数
确切地说,`ArrayList` 提供的这些方法构成了一套强大并且灵活的工具集,可以满足各种程序设计情况中的需求。例如,通过使用 `iterator()`方法,开发者可以在不知道集合大小的情况下遍历集合中全部或部分元素;而 `sort()`方法则能够对集合中的元素进行排序。这些函数在日常的Java编程中极其常见且重要,掌握它们对于进行集合操作和数据处理来说是基础且必须的。
37 2
Java中ArrayList的常用函数
|
4月前
|
存储 运维 Java
函数计算产品使用问题之怎么配置定时触发器来调用Java函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4月前
|
开发框架 Java Android开发
JNI中调用Java函数
JNI中调用Java函数
30 0
|
4月前
|
开发框架 Java Android开发
JNI中调用Java函数
JNI中调用Java函数
37 0
|
5月前
|
Rust Cloud Native Java
Java演进问题之Serverless应用或函数的冷启动如何解决
Java演进问题之Serverless应用或函数的冷启动如何解决
|
6月前
|
存储 算法 搜索推荐
Java中的数组函数库及其使用技巧
Java中的数组函数库及其使用技巧