4
A
回答
4
Type genericSuperclass = x.getClass().getGenericSuperclass();
if (genericSuperclass instanceof ParameterizedType) {
Type[] types =
((ParameterizedType) genericSuperclass).getActualTypeArguments();
}
然后你可以使用Class.isAssignableFrom
,如果type instanceof Class
,以验证它是否是Foo
与否。
即
if (types[0] instanceof Class) {
if (x.getClass().isAssignebleFrom(((Class) type[0]))){
// do something
}
}
相关问题
- 1. 确定泛型类型是否相同
- 2. 检查泛型类型是
- 3. 类型检查与泛型类
- 4. 的Java泛型类型泛型类型
- 5. 检查指定类型是否匹配泛型类型?
- 6. actionscript中的泛型(返回类型与参数类型相同)
- 7. 检查两种类型是否相同
- 8. 内部类泛型类型与外部类型相同
- 9. 检查泛型类型
- 10. Java泛型:如何测试字段类型是否是泛型类型的规范
- 11. 检测泛型类型是否打开?
- 12. 检查是否泛型类型的具体类型的内部类
- 13. 检查类型是否来自抽象泛型类
- 14. 如何检查是否泛型类型实例从另一个“继承”,既泛型类型和参数类型
- 15. 斯威夫特:投泛型类型为同一泛型类型,但与相关类型的子类
- 16. Java泛型类型
- 17. Java - 泛型类型
- 18. 算法检查泛型类型的数组是否是MaxHeap
- 19. Java的子类或实现泛型类型相同的边界
- 20. 确定类型是否是泛型类型的子类
- 21. 泛型类相同的通用型
- 22. 与泛型类型
- 23. 与泛型类型
- 24. 与泛型类型
- 25. 泛型类型Java中
- 26. 与泛型类类型
- 27. Java泛型类和非泛型类
- 28. 检查对象是否具有多类型参数的泛型
- 29. 是泛型类型
- 30. Java泛型:parametricise泛型类型
什么是'ParameterizedType'?你不能在'instanceof'中使用泛型类型参数(典型的'K','V','E','T'),对吗? – polygenelubricants 2010-05-03 14:19:17
'ParameterizedType'表示(在这种情况下)以下信息:'Bar' - 即(据我所知) - geejay需要知道的内容。 –
Bozho
2010-05-03 14:28:08
谢谢,但我如何使用它来确定它是否是一个子类型(Bar的是)? – geejay 2010-05-03 14:31:26