在 Java 8 中,可以使用 Class 类和泛型通配符 <?> 结合转换为实体。下面是一个示例代码:

import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;

public class Main {
    public static void main(String[] args) {
        Class<?> clazz = Person.class; // 获取Person类的Class对象

        try {
            Constructor<?> constructor = clazz.getConstructor(String.class, int.class); // 获取Person类的构造函数
            Object person = constructor.newInstance("John Doe", 25); // 使用构造函数创建实例

            if (person instanceof Person) {
                Person p = (Person) person; // 将Object对象转换为Person对象
                System.out.println("Name: " + p.getName());
                System.out.println("Age: " + p.getAge());
            }
        } catch (NoSuchMethodException | InstantiationException | IllegalAccessException | InvocationTargetException e) {
            e.printStackTrace();
        }
    }
}

class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

在上面的示例中,我们首先获取 Person 类的 Class 对象。然后,使用 getConstructor 方法获取 Person 类的构造函数,并通过 newInstance 方法使用构造函数创建实例。最后,通过使用 instanceof 关键字检查实例是否为 Person 类的对象,然后进行类型转换并访问实例的属性和方法。

Java 8 使用 Class 和 <?> 泛型通配符将对象转换为实体

原文地址: https://www.cveoy.top/t/topic/qnIq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录