我们可以使用反射来获取类的静态成员而不在对象实例上调用该方法吗?
换句话说:
public class MuchoStatic {
private static staticMember;
getStaticMember(){
return this.staticMember;
}
} //end class
然后还有更多代码:
Method m = null;
try{
m = MuchoStatic.class.getMethod("getStaticMember",null);
} catch (Exception e) {
}
Object o = null;
try{
o = m.invoke(MuchoStatic.class,null);
} catch (Exception e) {
}
我得到一个非法参数异常,我认为这是因为我将一个 Class 对象传递给调用方法。事实证明 Object o 实际上是 instatiated,但仍然抛出异常。
我们不应该能够做到这一点吗?