public class Reflector extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
protected Constructor |
defaultConstructor |
protected Map<String,FieldInvoker> |
fieldInvokers |
protected Map<String,MethodInvoker> |
methodInvokers |
protected boolean |
skipFinalField |
protected Class<?> |
type |
| 限定符和类型 | 方法和说明 |
|---|---|
protected FieldInvoker |
createFieldInvoker(Field field) |
protected MethodInvoker |
createMethodInvoker(Method method) |
Iterator<FieldInvoker> |
fieldIterator()
遍历类的成员变量
|
int |
fieldSize() |
FieldInvoker |
getFieldInvoker(String fieldName) |
Object |
getFieldValue(String fieldName,
Object target)
获取目标对象中指定字段的值
|
MethodInvoker |
getMethodInvoker(String methodName) |
Class<?> |
getType()
类型
|
protected void |
initFieldInvokers() |
protected void |
initMethodInvokers() |
Object |
invokeMethod(String methodName,
Object target,
Object... args)
执行目标对象中指定的方法
|
Iterator<MethodInvoker> |
methodIterator()
遍历类方法
|
int |
methodSize()
返回类中包含方法的数量
|
Object |
newInstance()
使用默认的构造方法初始化该类的实例
|
void |
setFieldValue(String fieldName,
Object target,
Object value)
给目标对象中指定字段赋值
|
String |
toString() |
protected Class<?> type
protected Constructor defaultConstructor
protected Map<String,FieldInvoker> fieldInvokers
protected Map<String,MethodInvoker> methodInvokers
protected boolean skipFinalField
public Reflector(Class<?> clazz)
public Reflector(Class<?> clazz, boolean skipFinalField)
protected void initFieldInvokers()
protected void initMethodInvokers()
protected FieldInvoker createFieldInvoker(Field field)
protected MethodInvoker createMethodInvoker(Method method)
public void setFieldValue(String fieldName, Object target, Object value)
fieldName - 字段名称target - 目标类value - 所要赋的值public Object getFieldValue(String fieldName, Object target)
fieldName - 字段名称target - 类的实例对象public Object invokeMethod(String methodName, Object target, Object... args)
methodName - 方法名target - 目标对象args - 方法中的参数public Object newInstance()
public Class<?> getType()
public FieldInvoker getFieldInvoker(String fieldName)
public MethodInvoker getMethodInvoker(String methodName)
public Iterator<FieldInvoker> fieldIterator()
FieldInvokerpublic Iterator<MethodInvoker> methodIterator()
MethodInvokerpublic int fieldSize()
public int methodSize()
Copyright © 2019. All rights reserved.