java读取变量getDeclaredField如何用反射读取私有属性?希望给我例子谢谢..以及publicclass A {publicStrin
java读取变量getDeclaredField 如何用反射读取私有属性?希望给我例子谢谢.. 以及 public class A { public String m; public void functionA(String s1,String s2){ s1 = "d"; s2 = "e"; m = s1 + s2; }; public static void main(String[] args) { A a = new A(); System.out.println(a.m); } } 怎么获取改变了的m值 [最优解释]
A a=new A(); a.functionA("a","b");//你先调用了这个方法再用反射获得值。 Field field=A.class.getDeclaredField("m");//根据变量名m获得字段 field.setAccessible(true);//设置字段可访问,即暴力反射 String m=(String)field.get(a);//在那个对象上获取此字段的值 System.out.println(m);
[其他解释]
A a=new A(); Field field=A.class.getDeclaredField("m");//根据变量名m获得字段 field.setAccessible(true);//设置字段可访问,即暴力反射 String m=(String)field.get(a);//在那个对象上获取此字段的值 System.out.println(m);
[其他解释]
public static void main(String[] args) { A a = new A(); a.functionA("a", "b"); System.out.println(a.m); }