作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们可以使用反射来获取类的静态成员而不在对象实例上调用该方法吗?
换句话说:
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 确实被实例化了,但仍然抛出异常。
我们不应该这样做吗?
最佳答案
Can we use reflection to get a static member of a class without invoking that method on an object instance?
当然,因为它是静态的。
Object o = null;
try {
Method m = MuchoStatic.class.getMethod("getStaticMember");
m.setAccessible(true);
o = m.invoke(null);
} catch (Exception e) {
// don't ignore the exception as it may be trying to tell you something
throw new AssertionError(e);
}
关于java - 我们可以使用反射来获取类的静态成员而不在对象实例上调用该方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19038043/
我是一名优秀的程序员,十分优秀!