[转载]在Java代码运行时获取当前和调用者的行号,方法名,类名,文件名

时间:2022-10-01 18:06:46
public class TestClass
{
    public static void main(String[] args)
    {
        test();
    }

    public static void test()
    {
        getCaller();
    }

    public static void getCaller()
    {
        StackTraceElement stack[] = (new Throwable()).getStackTrace();
        for (int i = 0; i < stack.length; i++)
        {
            StackTraceElement s = stack[i];
            System.out.format(" ClassName:%d\t%s\n", i, s.getClassName());
            System.out.format("MethodName:%d\t%s\n", i, s.getMethodName());
            System.out.format("  FileName:%d\t%s\n", i, s.getFileName());
            System.out.format("LineNumber:%d\t%s\n\n", i, s.getLineNumber());
        }
    }
}

转自:http://www.open-open.com/home/space-4097-do-blog-id-1588.html