正如我的标题所暗示的,我正在寻找一种方法,该方法如何使用.getName()
方法从另一个文件夹中的其他类调用方法,该方法返回String
值。
我遇到了我无法真正理解的反思,它是否可以解决这个问题。
我的第一个文件具有要调用的方法,并且位于.\JBP
(\ Java \ JBP)
public class jbp18 {
public void desc() {
print("Binary addition");
}
}
我的主程序位于。 (\ Java)包含以下内容:
print(""+file.getName().replace(".class","")+" - ");
print(file.getName().replace(".class","").desc()); //SHOULD BE jbp18.desc()
我可以理解并使用比反射方法更简单的代码来制作print(jbp18.desc())
吗?
我大约有20个文件需要这样,并且我基于它们的位置,所以我不能只调用它们,所以我想使用循环来使用jbp#.desc()
方法获取所有描述。
答案 0 :(得分:1)
您可以通过以下方式调用方法:
假设我们有此类和方法
public class YourClass{
public void printString(String myString){
System.out.println(myString);
}
}
1)首先获取您的方法,在此示例中,该方法具有String参数:
Method yourMethod = YourClass.class.getDeclaredMethod("printString", String.class);
然后,您可以通过以下方式调用它:
YourClass entity = new YourClass();
yourMethod.invoke(entity, "test123");