我的简单School
类看起来像这样:
public class School{
...
public static class Student{
public void register(){
...
}
}
}
如上所述,School
类有一个名为Student
的内部公共静态类。 register()
中定义了Student
方法。
在我的main函数中,我可以通过:
加载内部静态Student
类
Class<?> studentClass = Class.forName("School$Student");
我想知道,使用上面的代码行,如何以java 反射的方式调用register()
函数。
答案 0 :(得分:2)
如果您有一个有效的类,那么您可以使用以下方法访问和调用其方法:
Method register = studentClass.getDeclaredMethod("register");
register.invoke(studentClass.newInstance());