Quick quetion about Java Generic and Reflection

gbb21 2011-04-08 12:32:07
For a generic class, for example, List<T>, how can I get the "Class" object ?

For raw type List, I can get Class<List> by calling List.class; however, I cannot call List<T>.class to get Class<List<T>> object.

The motivation that I want to get Class<List<T>> is for the follow function call.

List<T> list = create(Class<List<T>> c);


thanks for your help, in advance .
...全文
118 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
SENSSSZ 2011-04-09
  • 打赏
  • 举报
回复
你该看看泛型擦除,运行时是无法得到类型参数的信息的。而且,List类只有一个,不是说有多少种类型参数就会有多少个List类,所以也没有List<T>.class这种东西,只能是List.class。
大壹哥 2011-04-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gbb21 的回复:]
没有人唉~
[/Quote]
你应该说nobody!
gbb21 2011-04-09
  • 打赏
  • 举报
回复
没有人唉~
  • 打赏
  • 举报
回复
create(Class<List<T>> c);
这个方法接收一个普通的Class对象就可以了,返回一个List可以直接赋值给List<T> list
ldq67123 2011-04-08
  • 打赏
  • 举报
回复
if the list is not empty and the Class<T> is a POJO,your can test the type of any element in the list
if not ,or the Class<T> is just a abstract class,your have to test every element to get its type
does anyone have a better solution?
gbb21 2011-04-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 slabcde 的回复:]

create(Class<List<T>> c);
这个方法接收一个普通的Class对象就可以了,返回一个List可以直接赋值给List<T> list
[/Quote]

If I call "create" function with List.class as argument, compiler will give me warning .....(saying something about raw type ....)
内容概要:本白皮书系统梳理了中国建筑声学行业的发展现状,重点围绕隔音材料的技术体系、市场格局与十大代表企业展开研究。文章厘清了隔音、吸音与防撞三大功能的概念边界,阐述了声音传播的物理机制及声学工程的材料、构造、施工与验证四层级结构;详细介绍了阻尼隔音板、隔音毡、吸音棉、减震构件、防撞软包等核心产品及其性能指标,并分析了行业标准、合规要求与工程实践中的常见误区;最后通过对广州朗音阁等十家大湾区代表性企业的并列介绍,揭示了行业“综合一体型”“材料制造型”“品牌产品型”等多元发展模式,强调系统交付能力、合规性与环保安全正成为企业核心竞争力。; 适合人群:建筑声学与隔音材料领域的工程采购方、建筑设计单位、总承包单位、行业研究者及政策监管相关人员。; 使用场景及目标:①帮助采购方科学选型,规避“以材料参数替代系统性能”等常见误区;②指导设计单位在公检法办案区、文化娱乐、医疗教育等细分场景中制定合理的声学解决方案;③为行业研究者提供市场格局、技术趋势与企业模式的客观参考;④推动企业提升合规意识与系统交付能力。; 阅读建议:读者应结合自身角色选择重点章节阅读——采购方可聚焦第一章、第三章、第五章、第八章及第九章;设计单位宜通读第一至七章;研究者建议全面研读并关注第二章市场格局与第四章技术趋势;所有读者均需注意本报告不进行企业排名,企业介绍篇幅差异不代表实力优劣,具体决策应以实地考察与合同约定为准。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧