0

これはばかげた質問のように思えるかもしれませんが (非常にプロジェクト固有のものである可能性があるため)、この場合は十分に一般的です。

ClassCastException私はタイトルとして書いたエラーメッセージで、を与えるコードを実行しています。ここで言及されているキャストは、タイプのオブジェクトからjava.lang.reflect.TypeへのものClass<?>です。

プリミティブ型を除いて、Java でクラスでない型はどれですか?

回答ありがとうございます

4

2 に答える 2

5

AClassはですTypeが、を実装しているため、Type必ずしも必要ではありません。ClassClassType

基本的に、インターフェイス、、、またはmyTypeの実装クラスのいずれかである可能性もあります。これらはすべてインターフェイスを拡張するためです。GenericArrayTypeParameterizedTypeTypeVariableWildcardTypeType

印刷myType.getClass()して、意味するタイプを確認してくださいClass<TheSaidType>

于 2013-01-29T19:15:26.910 に答える
2

Typeの Javadoc から、多くの実装タイプがあることがわかります。

All Known Subinterfaces:
    GenericArrayType, ParameterizedType, TypeVariable<D>, WildcardType

All Known Implementing Classes:
    Class 

サブインターフェースは、内部データ構造クラスを使用して実装されます。

于 2013-01-29T19:21:50.883 に答える