您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Java 反射怎么获得方法

2024/3/13 22:48:01发布37次查看
什么是java的反射机制?
java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是class类中的方法.所以先要获取到每一个字节码文件对应的class类型的对象.
反射就是把java类中的各种成分映射成一个个的java对象
例如:一个类有:成员变量、方法、构造方法、包等等信息,利用反射技术可以对一个类进行解剖,把个个组成部分映射成一个个对象。
如图是类的正常加载过程:反射的原理在与class对象。
熟悉一下加载的时候:class对象的由来是将class文件读入内存,并为之创建一个class对象。
获取class对象的三种方式
1.1 object ——> getclass();
1.2 任何数据类型(包括基本数据类型)都有一个“静态”的class属性
1.3 通过class类的静态方法:forname(string  classname)(常用)
其中1.1是因为object类中的getclass方法、因为所有类都继承object类。从而调用object类来获取
示例:通过反射调用类定义的方法
@test // 通过反射调用类定义的方法 public void testinvokemethod() throws exception { class clazz = class.forname("java.lang.string"); // 定义参数类型 class[] params = new class[1]; params[0] = string.class; method m = clazz.getdeclaredmethod("indexof", params); // 设置参数 object[] p = new object[1]; p[0] = "e"; integer s = (integer) m.invoke("helloworld!", p); system.out.println(s); }
以上就是java 反射怎么获得方法的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product