取得成员
成员在类中也被称为属性
操作属性
1. 获取Class对象
2. 利用Class对象创建该类的实例化对象
3.
Class类中取得成员的方法
取得全部成员
·获得本类声明的成员
public Filed[] getDeclaredFields();
·获得继承的声明成员
public Filed[] getFields();
取得指定名称的成员
·获得本类指定的成员
public Field getDeclaredField(String name);
·获得继承的声明成员
public Filed getField(String name);
java.lang.reflect.Field
表示成员的类型
在此类中定义有以下方法
在取得继承的成员是,只能取得非私有化的成员
public Object get(Object obj); //取得属性内容
public Class<?> getType(); //取得属性类型
public void set(Object obj, Object value); //设置属性内容
以dname为例
·找到dname属性
Field dnameField = clas.getDeclaredField("dname");
·找到dname的类型
System.out.println(dnameField.getType().getSimpleName());
直接操作属性的操作是不允许出现的,而且所有的属性都使用了private封装,这种封装可以解除
Field, Method,Constructor有共同父类 AccessibleObject,包含一个setAccessible()的操作方法
//取消封装
dnameField.setAccessible(true);
整个开发过程中,Field类最大的作用是取得属性类型。