【发布时间】:2018-04-13 22:53:15
【问题描述】:
我知道如果我有一个带有诸如此类的泛型类型参数的字段
List<String> mList
如果我可以得到对该字段的引用,我可以使用这段代码来确定泛型类型实际上是一个字符串:
((ParameterizedType field.getGenericType()).getActualTypeArguments()
但是,我的问题有点复杂。我们有一个看起来像这样的超类:
abstract class CustomList extends List<T> {
List<T> mList;
}
然后我们有另一个看起来像这样的类:
class FooList extends CustomList<Foo> {
//...
}
当我尝试思考字段 mList 时,它告诉我该泛型类型参数是 T。有什么方法可以确定它实际上是 Foo 类型的吗?如果我可以确定 FooList 类有一个泛型参数 Foo,那可能就足够了,但我也不知道该怎么做?
【问题讨论】:
-
您的代码似乎无法编译,但请检查fasterxml classmate
-
@zlakad。谢谢。我会看一下那个帖子——它似乎确实解决了这个问题。之前看的时候没找到。如果您将其发布为答案,我可以将其标记为已接受。再次感谢
-
@MenachemSchachter 不客气。我真的不在乎声誉所以就这样吧。也谢谢你……祝你好运,朋友。
标签: java reflection