java – 如何从一般的特定类获取一个类文字
有这样的方法需要类文字作为参数.
Collection<EmpInfo> emps = SomeSqlUtil.select( EmpInfo.class,"select * from emps"); 要么 GWT.create(Razmataz.class); 当我需要提供通用的特定类时,问题就出现了 EmpInfo<String> Razmataz<Integer> 以下将是错误的语法 Collection<EmpInfo<String>> emps = SomeSqlUtil.select( EmpInfo<String>.class,"select * from emps"); 要么 GWT.create(Razmataz<Integer>.class); 因为你不能做类似的语法 Razmataz<Integer>.class 那么,我怎么能挤出一个班级文字 EmpInfo<String> Razmataz<Integer> 所以我可以把它们作为需要类文字的方法的参数? 更多信息 好的,我承认我主要是要求GWT. 我有一对GWT RPC接口Razmataz. (FYI,GWT RPC接口必须在服务器 – 客户端对中定义).我打算使用相同的接口对来进行通信,无论是String,Integer,Boolean等. Razmataz< T>的GWT.create(Razmataz) 所以,似乎没有办法告诉GWT.创建T是什么,因为一个类文字是一个运行时概念,而泛型是一个编译时的概念,对吗? 解决方法
报价从
Java Generics and Collections,第7.2节:
class ClassLiteral { public Class<?> k = List<Integer>.class; // syntax error }
所以,别无选择,只能在类标记中使用原始类型 GWT.create(Razmataz.class); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |