gpt4 book ai didi

java - 从父类获取泛型 Class 对象

转载 作者:行者123 更新时间:2023-12-02 11:08:15 25 4
gpt4 key购买 nike

在我的程序中,我有一个带有通用参数的抽象基类。在这个类上我必须得到 Class子类中使用的通用参数的对象。目前我是这样做的:

public abstract class BaseItem<T>
public BaseItem(int id, Class<T> childGenricClass) {
//...
}
}

public class MainItem extends BaseItem<String> {
public MainItem(int id) {
super(id, String.class);
}
}

我真的必须通过构造函数将类传递给父类吗?或者Java中有没有办法动态地从父类获取它?

最佳答案

这是正确的,因为 JVM在运行时删除所有类型。在运行时你的T总是Object ,因此您的应用程序没有任何机会找出 T 的类别。是。因此您必须另外添加 Class<T> cls变量。

关于java - 从父类获取泛型 Class 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50773501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com