大家都知道,在C语言中,我们可以通过宏FILE
、 __LINE__
来获取文件名和行号,而在Java语言中,则可以通过StackTraceElement
类来获取文件名、类名、方法名、行号,具体代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
public static int getLineNumber( ){ StackTraceElement[] stackTrace = new Throwable().getStackTrace(); return stackTrace[ 1 ].getLineNumber( ); } public static String getMethodName( ){ StackTraceElement[] stackTrace = new Throwable().getStackTrace(); return stackTrace[ 1 ].getMethodName( ); } public static String getFileName( ){ StackTraceElement[] stackTrace = new Throwable().getStackTrace(); return stackTrace[ 1 ].getFileName( ); } public static String getClassName( ){ StackTraceElement[] stackTrace = new Throwable().getStackTrace(); return stackTrace[ 1 ].getClassName(); } |
以上就是利用Java获取文件名、类名、方法名和行号的全部内容,希望本文的内容对大家学习Java能有所帮助。