我有一个泛型类,它接受两个类型参数:
public class MyGenericClass<T, S> {
private List<T> myList;
private List<S> mySecondList;
//...
public void addToFirstList(T e) {
myList.add(e);
}
//...
}
我希望能够在工厂中创建类的实例时为这两个参数指定具体类型,然后能够从我的其余代码中派生这些类型。
例如,如果我有代码:
public class AccessFactory {
public static MyGenericClass<Integer, Float> getInst() {
return new MyGenericClass<Integer, Float>();;
}
}
public class UsingFactoryClass {
private MyGenericClass access;
...
public foo() {
access = AccessFactory.getInst();
}
}
我希望能够得出类中的实例MyGenericClass
使用参数和.access
UsingFactoryClass
Integer
Float
是否有可能做到这一点而不必与无处不在的类型安全警告作斗争?