这似乎是一个愚蠢的问题(因为它可能是非常具体的项目)但在这种情况下它足够普遍:
我正在运行一段代码,它给出了ClassCastException
,并且我写了标题错误信息。这里提到的演员来自java.lang.reflect.Type
到Class<?>
类型的对象。
除了原始类型,Java中的哪个类型不是类?
感谢您的回答
答案 0 :(得分:5)
Class
是Type
,Type
不一定是Class
,因为Class
implements Type
。
基本上,您的myType
也可以是接口GenericArrayType
,ParameterizedType
,TypeVariable
或WildcardType
的任何实现类,因为它们都扩展了Type
界面。
尝试打印myType.getClass()
以查看您的意思类型:您将获得Class<TheSaidType>
。
答案 1 :(得分:2)
从Type的Javadoc可以看出它有许多实现类型。
All Known Subinterfaces:
GenericArrayType, ParameterizedType, TypeVariable<D>, WildcardType
All Known Implementing Classes:
Class
使用内部数据结构类实现子接口。