Rumah  >  Artikel  >  Java  >  java反射机制主要提供了哪些功能?

java反射机制主要提供了哪些功能?

青灯夜游
青灯夜游asal
2020-09-28 17:14:0710728semak imbas

java反射机制主要提供的功能:1、在运行时判断任意一个对象所属的类;2、在运行时构造任意一个类的对象;3、在运行时判断任意一个类所具有的成员变量和方法;4、在运行时调用任意一个对象的方法;5、生成动态代理。

java反射机制主要提供了哪些功能?

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,也既是该方法的返回值。

更多编程相关知识,请访问:编程教学!!

Atas ialah kandungan terperinci java反射机制主要提供了哪些功能?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn