初步了解-反射

3.1.Class类

每个类被加载之后,系统会为该类生成一个字节码对象,通过该对象可以访问到虚拟机中对应的类。

3.2.通过Class类获得对象

a.forName(包名+类名)
b.类名.class
c.对象.getClass()

3.3.通过Class类获取类型的一些信息

a.getName()获得包名+类名
b.getSimpleName()获得类名
c.newInstance()获得类的实例对象
d.getModifiers()获得类的修饰符
e.getConstructor(构造函数的参数….)获得构造对象

3.4.通过Class类获取类型的方法的信息

a.getMethods() 获得公共方法包括从父类继承而来,返回一个Method[]数组。
b.getMethod(方法名,方法参数…) 获得指定方法名、指定参数的公共方法返回一个Method对象
c.getDeclaredMethods() 获得所有方法(包括私有),返回一个Method[]数组.
d. getDeclaredMethod(方法名,方法参数…)获得指定方法名、指定参数的方法(包括私有),返回一个Method对象

3.5.通过Class类获取类型的字段的信息

a.getFields() 获取所有公共字段,返回一个Field[]
b.getField(String name) 获得指定的公共字段,返回一个Field
c.getDeclaredFields() 获取所有的字段(包含私有),返回一个Field[]
d.getDeclaredField(String name) 获取指定参数的字段,包括私用,返回一个Field

你可能感兴趣的:(初步了解-反射)