反射 四 反射Filed 字段


/**
* 总结:先加载类,然后用getDeclaredField方法获得声明了的字段,
* 然后暴力反射
* set(对象,“设置的字段值”)
* get(字段类型)(对象)
* */

//设置name属性的值
@Test
public void test1() throws Exception{

Person p = new Person();

Class clazz = Class.forName("cn.itcast.reflect.Person");
Field f = clazz.getDeclaredField("name");
f.setAccessible(true);
f.set(p, "xxx");


System.out.println(p.getName());
}

//获取name属性的值
@Test
public void test2() throws Exception{

Person p = new Person();
p.setName("yyyy");


Class clazz = Class.forName("cn.itcast.reflect.Person");
Field f = clazz.getDeclaredField("name");
f.setAccessible(true);
String name = (String) f.get(p);
System.out.println(name);
}

你可能感兴趣的:(F#)