今天就跟大家聊聊有关怎么在java中利用反射创建代码,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1.实例说明
new 一个对象是实例,可以把这个new出来的对象叫做实例,说白了就是这个new出来的“东西”,叫它对象也可以,叫它实例也可以,对象和实例在这个角度上来讲是等价的。
2.创建空参的实例
使用Class对象的newInstance()方法来创建Class对象对应类的实例。
//原始:new的时候,先根据被new的类的名称找寻该类的字节码文件,并加载进内存,
//并创建该字节码文件对象,并接着创建该字节文件对应的Person对象。
Person p = new Person(); //反射:找寻该类的名称,并加载进内存,并产生Class对象 //在产生类的对象 Strint className = "com.example.hgx.Person"; Class clazz = Class.forName(className); Object obj = clazz.newInstance();
3.创建带参数的实例
这时要通过Class对象获取指定的Constructor对象,再调用Constructor对象的newInstance()方法来创建实例。
class Person { public String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } } //获取Person类带一个(String,int)参数的构造器 Strint className = "com.example.hgx.Person"; Class clazz = Class.forName(className); Constructor constructor = clazz.getConstructor(String.class,int.class);
内容扩展:
反射定义
反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字,那么就可以通过反射机制来获得类的所有属性和方法。
反射的作用
在运行时判断任意一个对象所属的类。
在运行时判断任意一个类所具有的成员变量和方法。
在运行时任意调用一个对象的方法
在运行时构造任意一个类的对象
看完上述内容,你们对怎么在java中利用反射创建代码有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。