标签:blank 反射 反射机制 imp type 运行 href https java语言
反射:
获取Class对象的方式:
1、Object.getClass()
2、Object.class
3、Class.forName()
父Class:
class.getSupperClass()
反射就是通过这三个类才能在运行时改变对象状态:
java.lang.reflect.Field
:对应类变量
java.lang.reflect.Method
:对应类方法
java.lang.reflect.Constructor
:对应类构造函数
1、field
getDeclaredField(String name)
获取指定的变量(只要是声明的变量都能获得,包括private)getField(String name)
获取指定的变量(只能获得public的)getDeclaredFields()
获取所有声明的变量(包括private)getFields()
获取所有的public变量getDeclaredMethod(String name, Class<?>... parameterTypes)
getMethod(String name, Class<?>... parameterTypes)
根据方法名获取指定的public方法,其它同上getDeclaredMethods()
获取所有声明的方法getMethods()
获取所有的public方法getDeclaredConstructor(Class<?>... parameterTypes)
获取指定构造函数,参数parameterTypes为构造方法的参数类型getConstructor(Class<?>... parameterTypes)
获取指定public构造函数,参数parameterTypes为构造方法的参数类型getDeclaredConstructors()
获取所有声明的构造方法getConstructors()
获取所有的public构造方法创建对象:
Constructor.newInstance();可以使用任何构造创建
Class.newInstance();只能通过无参构造器创建对象
https://www.jianshu.com/p/1c10b6c20d14
标签:blank 反射 反射机制 imp type 运行 href https java语言
原文地址:https://www.cnblogs.com/nxzblogs/p/9198634.html