已经获得了类的名称,是string类型的,例如myclass
string myclassname="myclass";
如何生成myclass的实例
myclass mc=new myclassname(); 这样不可以啊
同样的 如果有了 String 类型的方法名称 如getName 如何调用呢
string myclassname="myclass";
如何生成myclass的实例
myclass mc=new myclassname(); 这样不可以啊
同样的 如果有了 String 类型的方法名称 如getName 如何调用呢
有这种需求的时候才能体现java反射功能的强大
......
Class ownerClass = owner.getClass();
Field field = ownerClass.getField(fieldName);
Object property = field.get(owner);
return property;
}
/code]
Class cls = Class.forName(s);
这和反射有啥关系。。
myclassname 是变量名 怎么可以new .你说的string 是是你定义的变量吗String 第一个要大写
Method method = clazz.getMethod(方法名, 参数类型列表);
method.invoke(obj, 参数值列表);另外,如果是私有构造方法或者私有方法,要调用getDeclaredConstructor()和getDeclaredMethod()才能获取到。