List.class,报错,为啥?

雨中的月儿 2015-09-22 07:23:13
函数如下:

public static <T> T ReadJson(String _strJson, Class<T> _class)
{
}


调用代码为:

List<int> bean = ReadJson(strJson, List<int>.class);


在Eclipse里的错误提示为:
Multiple markers at this line
- Syntax error on token ">", delete this token
- Syntax error, insert "Dimensions" to complete
ReferenceType

请高手帮忙 !
...全文
349 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
解开者 2015-09-23
  • 打赏
  • 举报
回复
泛型是编译行为,在运行时不存在,所以编译器不允许运行时获取泛型类型
邹邹wl 2015-09-22
  • 打赏
  • 举报
回复
List.class不就行了吗
zhuangqingch 2015-09-22
  • 打赏
  • 举报
回复
java的泛型中的参数是不允许使用原始类型的。都需要用引用类型。如Integer。 另外List<int>.class这种获取Class对象方式在java中是不支持的。应修改为List.class
远东悟语 2015-09-22
  • 打赏
  • 举报
回复
修改int为 Integer 试一试吧
List不能赋值给List List不能赋值给List 1.首先,二者不是父子类关系。 如果是普通的父子类关系,由于Java的多态性,底层的后期绑定机制会在运行时检索子类方法列表,从而实现多态。 2.List属于泛型。(也算是多态的一种) Java的泛型实现是基于类型擦除的。换句话说,ListList由于类型擦除,在编译后会映射到相同的List类型上,也就是运行时实际无法区分二者,不过在取用时,编译器会进行类型还原,从而变为原来的ListList

62,635

社区成员

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

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