java反射生成对象的方法

本教程操作环境:windows7系统、java10版,DELL G3电脑。

1、两种生成方式

使用Class对象的newInstance()方法制作该Class对应类实例(该方法要求该Class对应类有默认结构器)。

使用Class对象获得指定的Constructor对象,然后调用Constructor对象的newInstance()方法制作该Class对象对应类的例子(这种方法可以选择指定的结构器制作例子)。

2、实例

classPerson{

privateStringname;

privateIntegerage;

publicPerson(){
this.name="system";
this.age=99;
}

publicPerson(Stringname,Integerage){
this.name=name;
this.age=age;
}

publicIntegergetAge(){
returnage;
}

publicStringgetName(){
returnname;
}

@Override
publicStringtoString(){
return"Person{"+
"name='"+name+'\''+
",age="+age+
'}';
}
}


publicclassTest{

publicstaticvoidmain(String[]args)throwsException{
Class<Person>pClass=Person.class;
//通过第1种方式创建对象
Personp=pClass.newInstance();
System.out.println(p);
//通过第2种方式创建对象
Constructor<Person>constructor=pClass.getDeclaredConstructor(
String.class,Integer.class);
Personperson2=constructor.newInstance("zhangsan",20);
System.out.println(person2);
}
}

可以通过包含键值对的配置文件创建对象。读取配置文件中的键值对,程序可以用键值对创建一个“字符串-对象”的对象池,然后通过字符串访问这些对象。

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容