私は次のクラスを持っています:
public abstract class MyClass<T extends Object> {
protected T createNewFromData(Reader reader){
GSON.fromJSON(reader,T.class); // T.class isn't allowed :(
}
}
そこに Class<T> インスタンスを渡すにはどうすればよいですか? 奇妙で風変わりな回避策はありますか?
タイプ T の事前にインスタンス化されたオブジェクトから以外に Class<T> 参照を取得する方法はありますか? これも私にさせません:
T t = new T();
Class<T> klass = t.class;
試み #2
興味深いことに、クラス定義から「extends JSONOBjBase」を削除すると、チェックされていないキャスト警告 (エラーなし) が返されます。キャストがどのように行われるかを書く別の方法はありますか?