Java获取反射的三种方法,java反射获取方法以及调用方法
什么是java的反射机制?
JAVA反射机制是,在运行状态下,对于任何一个类,都可以知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取信息,动态调用对象方法的功能,被称为java语言的反射机制。
要剖析一个类,首先必须获得该类的字节码文件对象。解剖使用的是Class类中的方法,所以我们需要先获取每个字节码文件对应的Class类型的对象。
反射是java类中的各种组件到Java对象的映射。
比如一个类有成员变量、方法、构造方法、包等信息。反射技术可以用来剖析一个类,并将其组件映射到对象中。
就是如图所示的类的正常加载过程:反射的原理和类对象有关。
熟悉加载:类对象的起源是将类文件读入内存,并为其创建一个类对象。
如何解决写爬虫IP受阻的问题?立即使用。
获取Class对象的三种方式
1.1 Object —— getClass();
1.2任何数据类型(包括基本数据类型)都有一个“静态”的类属性。
1.3类的静态方法:forName(字符串类名)(常用)
1.1是因为Object类中的getClass方法,因为所有类都继承Object类。从而调用对象类来获取
示例:通过反射调用类定义的方法
@测试
//通过反射调用类定义的方法
公共void testInvokeMethod()引发异常{
class clazz=class . forname( Java . lang . string );
//定义参数类型
Class[] params=新类[1];
params[0]=string . class;
方法m=clazz . getdeclaredmethod( index of ,params);
//设置参数
Object[] p=新对象[1];
p[0]= e ;
Integer s=(Integer)m . invoke( hello world!,p);
system . out . println(s);
}以上是如何获取Java反射的细节。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。