获取调用当前方法的类名
第一种常规方式:
StackTraceElement stack[] = (new Throwable()).getStackTrace(); for (int i = 0; i < stack.length; i++) { StackTraceElement s = stack[i]; System.out.println("调用当前当前方法的类名:"+s.getClassName()); System.out.println("调用当前当前方法的方法名:"+s.getMethodName()); System.out.println("调用当前当前方法的文件名:"+s.getFileName()); System.out.println("调用当前当前方法的行数:"+s.getLineNumber()); System.out.println("调用当前当前方法的类:"+s.getClass()); }
StackTraceElement stack[] = (new Throwable()).getStackTrace(); StackTraceElement s = stack[0]; System.out.println("调用当前当前方法的类名:"+s.getClassName()); System.out.println("调用当前当前方法的方法名:"+s.getMethodName()); System.out.println("调用当前当前方法的文件名:"+s.getFileName()); System.out.println("调用当前当前方法的行数:"+s.getLineNumber()); System.out.println("调用当前当前方法的类:"+s.getClass());
第二种懒人方式:
String name = Thread.currentThread().getStackTrace()[1].getClassName();
System.out.println("调用当前方法的类名"+name);
第三种方式:
this.getClass()
使用方法:
直接添加在当前方法中即可。