Class<List>
、Class<List<?>>
またはClass<List<Anything>
実際に同じを参照しClass
ます。
しかし、私が持っている場合
class MyClass implements List<SomeClass> {
// ...
}
私はそれから書くことができました
Class<? extends List<SomeClass>> myClass = MyClass.class;
それから私は書くことができます
List<SomeClass> myInstance = myClass.newInstance();
トリックは、このクラスをリフレクションを使用してロードし、同じ型でClassLoader.loadClass
宣言したいということです。myClass
これを行う適切な/最も簡単な方法は何ですか?
コンパイルの警告が発生せず、必要のないソリューションが必要です@SuppressWarnings
(これはおそらく、より強力なバージョンの のように、スーパー タイプの実行時チェックを行うことを意味しますClass.asSubclass
)。