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

文件名

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


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 3,341评论 0 3
  • Java经典问题算法大全 /*【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子...
    赵宇_阿特奇阅读 2,115评论 0 2
  • 一、 1、请用Java写一个冒泡排序方法 【参考答案】 public static void Bubble(int...
    独云阅读 1,532评论 0 6
  • 有件事情,我很后悔,就是,今年6月份张继科来成都打比赛,我没去接机。因为很悲催的是,他后头退出单打了,看他打比赛的...
    没有心思阅读 125评论 0 0

友情链接更多精彩内容