美文网首页
java 获取当前类名,方法名,行号

java 获取当前类名,方法名,行号

作者: __Andy__ | 来源:发表于2018-08-15 14:08 被阅读111次

文件名

Thread.currentThread().getStackTrace()[originStackIndex].getFileName();

方法名

Thread.currentThread().getStackTrace()[originStackIndex].getMethodName();

行号

Thread.currentThread().getStackTrace()[originStackIndex].getLineNumber();

类名

Thread.currentThread().getStackTrace()[originStackIndex].getClassName();

示例:


private static int originStackIndex = 2;
    public static String getFileName() {
        return Thread.currentThread().getStackTrace()[originStackIndex].getFileName();
    }

类名
    public static String getClassName() {
        return Thread.currentThread().getStackTrace()[originStackIndex].getClassName();
    }

方法名
    public static String getMethodName() {
        return Thread.currentThread().getStackTrace()[originStackIndex].getMethodName();
    }

行号
    public static int getLineNumber() {
        return Thread.currentThread().getStackTrace()[originStackIndex].getLineNumber();
    }
       
public static void main(String[] args) {
    System.out.println(LogUtils.getFileName());
    System.out.println(LogUtils.getClassName());
    System.out.println(LogUtils.getMethodName());
    System.out.println(LogUtils.getLineNumber());
}


输出

LogUtils.java

main.java.utils.LogUtils

main

28


相关文章

网友评论

      本文标题:java 获取当前类名,方法名,行号

      本文链接:https://www.haomeiwen.com/subject/ycwphftx.html