首页 > 文章列表 > java反射创建对象

java反射创建对象

java 反射
375 2022-08-06

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

1、用Class对象的newInstance()方法制作对象

(1)获得类Class对象。

(2)通过调用获得的Class对象的newInstance()获得对象,该方法将返回Object类型的对象,因此需要强制旋转

2、通过Constructor类newInstance()获得

(1)获得一种Class实例

(2)调用Class中的getConstructor()方法获得Constructor对象

(3)调用Constructor的newInstance()方法获得类的实例

3、实例

Class clazz=Dog.class;
Constructor constructor=clazz.getConstructor(String.class,int.class});
Dog dog=(Dog) constructor.newInstance("xiaohei",3});
System.out.println(dog.name+" "+dog.age);

程序的第二行我们调用Class对象的getConstructor方法,然后在参数列表中传入String和int,因为我们的有参构造函数的参数列表就是这样规定的,现在我们就获取到了前边定义好的Dog类的有参构造函数了。

第三行我们通过获取的Constructor对象调用newInstance方法,然后在方法中传入Object类型的参数列表,因为我们的有参构造函数需要这些值,这样就可以通过反射的方式创建只有有参构造函数的对象了。