做单元 测试时,输出日志想知道当前 在执行哪个方法,直接用reflect没想到怎么写,在网上搜索了一下,可以这样写,
分享下,看看大家 还有没有 相关别的好方法。
JDK1.4
public class MyTest {
public static void main(String args[]) {
new MyTest().doit();
}
public void doit() {
System.out.println
(new Exception().getStackTrace()[0].getMethodName());
}
}
JDK1.5, a new technique is available.
public class Test {
public static void main(String args[]) {
trace(Thread.currentThread().getStackTrace());
new Test().doit();
trace(Thread.currentThread().getStackTrace());
}
public void doit() {
trace(Thread.currentThread().getStackTrace());
doitagain();
}
public void doitagain() {
trace(Thread.currentThread().getStackTrace());
}
public static void trace(StackTraceElement e[]) {
boolean doNext = false;
for (StackTraceElement s : e) {
if (doNext) {
System.out.println(s.getMethodName());
return;
}
doNext = s.getMethodName().equals("getStackTrace");
}
}
}
main
doit
doitagain
main
参考: http://www.rgagnon.com/javadetails/java-0420.html
分享到:
相关推荐
### Python 实现获取当前登录用户信息的方法 在Python编程中,获取当前登录用户的详细信息是一项基本而重要的功能。本文将详细介绍如何在不同的操作系统环境中(包括Linux和Windows)使用Python来获取这些信息,并...
- **示例**:通过以下代码可以获得当前应用域的基目录: ```csharp string baseDirectory = System.AppDomain.CurrentDomain.BaseDirectory; // 输出结果可能为"F:\XFU.NSQS\project\website\bin\" ``` 需要...
通过`Thread.currentThread().getStackTrace()`,我们可以得到一个`StackTraceElement`数组,从中可以获取到调用栈的详细信息,包括类名、方法名和行号。 2. **控制日志输出**:LOG封装往往包含开关机制,允许...
### 获取并关闭当前计算机系统内某个进程的知识点 在日常的计算机操作中,有时我们需要获取当前计算机系统内的所有运行进程或者特定名称的进程,并且可能还需要关闭这些进程。这一需求在开发过程中尤其常见,比如在...
在C#中,控件通常被组织在容器(如Form、Panel等)内,而容器本身也可以包含其他控件,形成一个控件树结构。因此,我们需要编写一个方法,能够遍历这个树结构,直到找到具有指定名字的控件。 下面是一个实现这个...
通过`System.Diagnostics.Process`类中的`GetCurrentProcess()`方法,可以访问到当前正在运行的进程信息。而`MainModule`属性则返回该进程的主要模块,最后调用`FileName`属性即可获得完整路径。 ### 2. System....
`request.getServletPath()`方法可以获取当前请求的Servlet的路径,它不包含上下文路径,仅返回从Web应用根目录开始的Servlet路径。例如,如果页面位于`jsp`目录下,那么结果将是`/jsp/test.jsp`。这对于在页面内部...
在微信小程序开发中,获取用户当前位置和城市名是常见的需求,尤其对于提供本地化服务的应用来说至关重要。本文将详细介绍如何实现这一功能。 首先,要获取用户的地理位置,必须先获得用户的授权。微信小程序提供了...
- `get_class_methods($this)` 直接返回一个数组,包含了 `$this` 对象所属类的所有方法名。 2. **返回值**: - 返回的是一个包含字符串的数组,每个字符串代表一个方法名。 #### 总结 通过以上两种方式,我们...
在Android开发中,有时我们需要获取当前正在执行的类名或方法名,这在调试、日志记录、性能分析等场景非常有用。以下是如何在Android应用中实现这一功能的详细步骤和相关知识点: 首先,Android系统提供了`...
### PowerShell中获取当前运行脚本路径的方法 在PowerShell环境下,获取当前正在执行的脚本的路径是一项常用且实用的功能。这项功能可以帮助我们更灵活地处理脚本内部的文件操作,例如读取或写入与脚本同目录下的...
4. **返回类型不同不是重载**: 方法的返回类型不同并不构成重载条件,因为Java编译器是根据方法签名(方法名+参数列表)来进行匹配的。 5. **构造函数也可以重载**: 构造函数同样可以被重载,这意味着一个类可以...
这种方法虽然简单,但由于它依赖于`Context`对象的字符串表示,因此在Service中可能无法得到预期的结果。 接下来是第二种方法,虽然稍显复杂,但更为可靠,而且在所有场景下都能正常工作,前提是你已经在...
这段代码定义了一个名为`Function`的类,其中包含四个静态方法分别实现了上述四种日期判断功能。你可以根据实际需求调整这些方法,以适应不同的业务场景。通过这种方式,我们可以有效地处理日期和时间相关的逻辑,...
这种方法简单且易于理解,但是它只能获取到当前执行的函数名,对于函数调用的上下文没有更多的信息。 #### 二、使用 `inspect.stack()` `inspect` 模块提供了一系列工具,可以用来获取关于活动对象的信息,比如类...
### JS获取客户端IP地址、MAC和主机名的7个方法详解 #### 一、使用JS获取客户端IP的方法 ##### 方法一:使用ActiveX获取IP(仅适用于IE浏览器) 这种方法依赖于`ActiveXObject`来实现,因此只能在允许运行ActiveX...
本文将详细介绍如何在Web程序或Web服务中获取当前目录的方法。 ### 方法一:使用 `System.AppDomain.CurrentDomain.BaseDirectory` 在.NET框架中,`System.AppDomain.CurrentDomain.BaseDirectory` 属性可以用来...
然而,由于解析解往往难以获得或者不存在,我们通常需要借助数值方法来求解。 本资料包是关于用MATLAB语言实现数值方法求解常微分方程的一个实例教程。MATLAB是一款强大的数学计算软件,具有丰富的工具箱,其中包括...
以下是从标题、描述、标签以及部分内容中提炼出的关键知识点,涵盖了获取当前程序路径的各种方法及其应用场景。 ### 1. System.Environment.CurrentDirectory `System.Environment.CurrentDirectory` 返回当前应用...
《Windows VC++ 调整进程当前目录为程序可执行文件所在目录》...得到当前进程可执行文件的路径名,文件名,后缀名。 3.AdjustProcessCurrentDirectory 调整进程当前目录为程序可执行文件所在目录