大家都知道,在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能有所帮助。