如何使用反射实例化一个类对象呢?


在Java中的反射机制是指在运行状态中,对于任意一个类都能够知道这个类所有的属性和方法; 并且对于任意一个对象,都能够调用它的任意一个方法; 这种动态获取信息以及动态调用对象方法的功能成为Java... 反射的应用场合 在Java程序中许多对象在运行是都会出现两种类型:编译时类型和运行时类型。

反射在Spring中一种常见的操作,那么反射如何实例化一个类对象呢?

下文讲述使用Java反射一个类对象的方法分享,如下所示: 

实现思路:

  1. forName():获取指定的Class对象
  2. getConstructors():获取构造函数数组,选择合适的构造函数
  3. newInstance():创建类的新实例 

例: 

package com.java265.other;
import java.lang.reflect.Constructor;
public class TestClass {
public static void main(String[] args) throws Exception {
Class<?> clazz = Class.forName("com.java265.other.User");
Constructor<User> c = (Constructor<User&gt;) clazz.getConstructor();

User u = c.newInstance();// 实例化一个对象
System.out.println(u);
}
}

class User {
public User() {
}
}
------运行以上代码,将输出以下信息----
com.java265.other.User@4517d9a3

转自:http://java265.com/JavaCourse/202112/2038.html