我正在尝试编写一个通用请求生成器方法,它将返回如下所示的不同对象:
GenricClass<Object1> genCls1 = getNewRequest(Object1.class);
GenricClass<Object2> genCls2 = getNewRequest(Object2.class);
GenricClass<Object3> genCls3 = getNewRequest(Object3.class);
我希望这个getNewRequest
返回一个包含泛型类对象的对象。
我的getNewRequest
方法的签名应该如何?
public `?` getNewRequest(Class classtype) {...}
答案 0 :(得分:4)
您可以在包含方法getNewRequest
的类中声明泛型类型参数,也可以直接在方法中声明。
例如,在方法T
中声明泛型参数getNewRequest
:
public <T> GenricClass<T> getNewRequest(Class<T> classtype)
答案 1 :(得分:0)
使用T的classType实例作为参数并返回相同类类型的GenericClass。有点像:
public GenericClass<T> getNewRequest(T classtype) {
}
答案 2 :(得分:0)
类似的东西:
public <T> GenericClass<T> getNewRequest(Class<T> classtype) {
}