当您需要在多个地方获取类位置时,封装成方法是一个好主意。以下是一个示例方法,以获取给定类名的位置:
```java
import java.io.IOException;
import java.net.URL;
public class ClassLocationFinder {
public static String getClassLocation(String className) {
try {
Class<?> myClass = Class.forName(className);
URL classLocation = myClass.getProtectionDomain().getCodeSource().getLocation();
return classLocation.getPath();
} catch (ClassNotFoundException e) {
e.printStackTrace();
return "Class not found or loaded.";
}
}
public static void main(String[] args) {
String className = "com.example.MyClass"; // 替换成您要查找的类名
String location = getClassLocation(className);
System.out.println("Class location: " + location);
}
}
```
您可以在其他地方调用`getClassLocation`方法并传入所需的类名,以获取该类的位置。方法会返回类的位置字符串。