如何使用Java反射创建对象?
作者:SoftHope
时间:2023-04-25
浏览:3
1.实例说明new一个对象是实例,可以把这个new出来的对象叫做实例,说白了就是这个new出来的“东西”,叫它对象也可以,叫它实例也可以,对象和实例在这个角度上来讲是等价的。2.创建空参的实例。使用Class对象的newInstance()方法来创建Class对象对应类的实例。//原始:new的时候,先根据被new的类的名称找寻该类的字节码文件,并加载进内存,//并创建该字节码文件对象,并接着创建该字节文件对应的Person对象。Personp=newPerson();//反射:找寻该类的名称,并加载进内
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);
作者最新文章
quicker中文设置在哪里打开并切换中文教程
2026-10-12 17:45
blender纹理坐标和映射怎么调出节点操作教程
2026-10-10 18:40
codekit环境配置指南从安装到环境搭建完整教程
2026-10-09 13:54
苹果折叠屏iPhone是翻盖还是对折形态
2026-09-14 13:33
速腾聚创自研SPAD-SoC芯片交付破50万颗,MARS基地实现8秒下线一台激光雷达
2026-09-08 17:42
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多










































