java反射机制主要提供的功能:1、在运行时判断任意一个对象所属的类;2、在运行时构造任意一个类的对象;3、在运行时判断任意一个类所具有的成员变量和方法;4、在运行时调用任意一个对象的方法;5、生成动态代理。
JAVA的反射机制主要提供的功能有:
1、在运行时判断任意一个对象所属的类;
2、在运行时构造任意一个类的对象;
3、在运行时判断任意一个类所具有的成员变量和方法;
4、在运行时调用任意一个对象的方法;
5、生成动态代理;
得到该对象所属的类:
Class ownerClass = owner.getClass()
在运行时构造一个类的对象:
Class newoneClass = Class.forName(className):第一步,得到要构造的实例的Class。 Constructor cons = newoneClass.getConstructor(argsClass):得到构造器。 cons.newInstance(args):新建实例。
在运行时判断一个类所具有的成员变量和方法:
Class ownerClass = owner.getClass():得到该对象的Class。
Field field = ownerClass.getField(fieldName):通过Class得到类声明的属性。
Object property = field.get(owner):通过对象得到该属性的实例,如果这个属性是非公有的,这里会报IllegalAccessException。
在运行时调用一个对象的方法:
Method method = ownerClass.getMethod(methodName, argsClass):通过Method名和参数的Class数组得到要执行的Method。
method.invoke(owner, args):执行该Method,invoke方法的参数是执行这个方法的对象,和参数数组。
返回值是Object,也既是该方法的返回值。
更多编程相关知识,请访问:编程教学!!