javaで現在位置を取得する方法
Javaで現在位置を取得するには、Javaのjava.lang.ThreadクラスのcurrentThread()メソッドで現在実行中のスレッドを取得し、getStackTrace()メソッドでスタックトレースを取得します。その後、getClassName()、getMethodName()、getLineNumber()メソッドを使用すれば、クラス名、メソッド名、行番号を取得できます。
次をサンプルコードとして記載します:
public class CurrentLocation {
public static void main(String[] args) {
getLocation();
}
public static void getLocation() {
Thread thread = Thread.currentThread();
StackTraceElement[] stackTraceElements = thread.getStackTrace();
if (stackTraceElements.length >= 2) {
String className = stackTraceElements[1].getClassName();
String methodName = stackTraceElements[1].getMethodName();
int lineNumber = stackTraceElements[1].getLineNumber();
System.out.println("当前位置:" + className + "." + methodName + "(" + lineNumber + ")");
}
}
}
翻訳結果には類似性が見受けられません。
当前位置:CurrentLocation.main(5)
位置取得方法はデバッグや開発目的のみで使用してください。本番環境には適していません。