Java泛型通过.class参考 [英] Java Generics Pass .class Reference

查看:139
本文介绍了Java泛型通过.class参考的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要调用一个超级构造函数,它要求我传递一个泛型类型的 .class 引用。如何用Java实现这一目标?



构造函数想要..

 类<列表与LT;&的MyType GT;> 

由于泛型在运行时被擦除,我不知道如何满足构造函数。

  List< MyType> .class // does not work ;-) 
Class 原始类型):

解决方案 p>

  @SuppressWarnings({unchecked,rawtypes})
Class< List< MyType>> clazz =(Class)List.class


I need to call a super constructor that requires me to pass a .class reference of a generic type. How can I achieve this with Java?

The constructor wants to have..

Class<List<MyType>>

As generics are erased at runtime, I have no clue how to satisfy the constructor.

List<MyType>.class // does not work ;-)

解决方案

Like this (cast to the Class raw type first):

@SuppressWarnings({ "unchecked", "rawtypes" })
Class<List<MyType>> clazz = (Class) List.class

这篇关于Java泛型通过.class参考的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆