想象一下:
Class A{
private int a;
}
Class B{
public void fn(){
A obj=new A();
// access obj's private variable a here.
}
}
我想访问obj的私有变量a,如注释掉的那样。反射不起作用,因为它抛出了fieldaccessexception。我想访问一个。还有其他办法吗?我无法更改访问修饰符。
答案 0 :(得分:2)
您只能在Windows Phone上访问公共,内部或受保护的成员(即字段,方法等)。
Windows Phone上的反射不允许访问私有成员。我建议您使用“内部”作为您希望访问的内部成员。
答案 1 :(得分:0)
在Windows Phone上无法做到这一点。您无法从课堂外访问a
字段。如果您拥有A
类的源代码,则可能需要更改该字段的可见性。否则,你就被困住了。