返回所传递参数的实例的Java泛型方法
我想创建一个具有如下签名的方法:返回所传递参数的实例的Java泛型方法,java,generics,Java,Generics,我想创建一个具有如下签名的方法: public-Dao-createDao(ClassA-param1,ClassB-param2) 但这不是有效的Java。 我想创建一个方法,该方法接收任何类,创建一个Dao对象,然后返回新对象 public Dao<ClassA,ClassB> createDao(ClassA param1, ClassB param2) { //Do some stuff that creates an object of Dao<param1,
public-Dao-createDao(ClassA-param1,ClassB-param2)
但这不是有效的Java。
我想创建一个方法,该方法接收任何类,创建一个Dao对象,然后返回新对象
public Dao<ClassA,ClassB> createDao(ClassA param1, ClassB param2) {
//Do some stuff that creates an object of Dao<param1,param2>
return Dao<param1,param2>;
}
public-Dao-createDao(ClassA-param1,ClassB-param2){
//做一些创建Dao对象的工作
返回道;
}
有没有办法解决这个问题
谢谢。试试这个:
public <A,B> Dao<A,B> createDao(A param1, B param2) {
return ...
}
公共Dao创建Dao(A参数1,B参数2){
返回。。。
}
试试这个:
public <A,B> Dao<A,B> createDao(A param1, B param2) {
return ...
}
公共Dao创建Dao(A参数1,B参数2){
返回。。。
}
男人的回答是正确的。
如果您处理的是类对象,那么
public <T, K> Dao<T, K> createDao(final Class<T> t, final Class<K> k) {
return new Dao<>();
}
公共Dao创建Dao(最终类t,最终类k){
返回新的Dao();
}
男人的回答是正确的。
如果您处理的是类对象,那么
public <T, K> Dao<T, K> createDao(final Class<T> t, final Class<K> k) {
return new Dao<>();
}
公共Dao创建Dao(最终类t,最终类k){
返回新的Dao();
}
见@Manh的答案。您希望使用类型参数,而不是类实例。其术语是泛型。您可以创建泛型方法以及泛型类。看一看,看@Manh的答案。您希望使用类型参数,而不是类实例。其术语是泛型。您可以创建泛型方法以及泛型类。请看下面的图片。