Java获取当前类名和方法名
Posted 格子衫111
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java获取当前类名和方法名相关的知识,希望对你有一定的参考价值。
获取class名:
非static method中使用:
this.getClass().getName();// 这是完整的类路径名
this.getClass().getSimpleName();// 仅仅是类名
static method中使用:
Thread.currentThread().getStackTrace()[1].getClassName();
获取方法名:
Thread.currentThread().getStackTrace()[1].getMethodName();
获取行号:
Thread.currentThread().getStackTrace()[1].getLineNumber();
Log 代码:
System.out.println("Class: "+this.getClass().getName()+" method: "+Thread.currentThread().getStackTrace()[1].getMethodName() +" line:"+Thread.currentThread().getStackTrace()[1].getLineNumber());
获取文件名(带后缀):
Thread.currentThread().getStackTrace()[1].getFileName();
完整示例:
package com.hello.demo;
public class TestA
public void hello()
System.out.println("hello world");
String className = this.getClass().getName();
String simpleClassName = this.getClass().getSimpleName();
String methodName = Thread.currentThread().getStackTrace()[1].getMethodName();
// hello world
//className: com.hello.demo.TestA, simpleClassName: TestA, methodName: hello
System.out.println("className: " + className + ", simpleClassName: " + simpleClassName + ", methodName: " + methodName);
public static void main(String[] args)
new TestA().hello();
https://blog.csdn.net/cnds123321/article/details/122812305
以上是关于Java获取当前类名和方法名的主要内容,如果未能解决你的问题,请参考以下文章