Spring中IOC的核心原理,将文本转换成jvm对象的方法。【本文有待修善】
1. 获取类信息
- 获取指定类对应的Class对象
Class c = ArrayList.class;
Class c = list.getClass();
Class c = Class.forName("java.util.ArrayList");//并加载指定的类
- 获取包名
String packageName = c.getPackage().getName();
- 获取类的修饰符
int mod = c.getModifiers();
String modifier = Modifier.toString(mod);
- 类的全限定名
String className = c.getName();
- 父类
Class superC = c.getSuperclass();
- 实现的接口
Class interfaces = c.getInterfaces();
- public变量/成员变量及操作
Field[] fields = c.getFields();
Field[] fields = c.getDeclaredFields();
Field field = c.getDeclaredField("变量名");
field.set(对象,"变量值")
- 构造方法
Constructor[] constructors = c.getDeclaredConstructors();
- public方法(包括父类)/自己的的成员方法
Method[] methods = c.getMethods();
Method[] methods = c.getDeclaredMethods();
- 通过类的类类型创建该类的对象实例
String str = (String)c1.newInstance();//需要有无参数的构造方法
2. 创建对象
1 | Class c = Class.forName("java.util.ArrayList"); |
3. 方法反射
方法对象.invoke(类对象,参数表);
1 | public class MethodDemo1 { |