可以在定义泛型类别时,宣告多个类型持有者,例如:
public class GenericFoo<T1, T2> { private T1 foo1; private T2 foo2; public void setFoo1(T1 foo1) { this.foo1 = foo1; } public T1 getFoo1() { return foo1; } public void setFoo2(T2 foo2) { this.foo2 = foo2; } public T2 getFoo2() { return foo2; } }
您可以如下使用GenericFoo类别,分别以Integer与Boolean取代T1与T2:
GenericFoo<Integer, Boolean> foo =new GenericFoo<Integer, Boolean>();
如果是数组的话,可以像这样:
public class GenericFoo<T> { private T[] fooArray; public void setFooArray(T[] fooArray) { this.fooArray = fooArray; } public T[] getFooArray() { return fooArray; } }
您可以像下面的方式来使用它:
String[] strs = {"caterpillar", "momor", "bush"}; GenericFoo<String> foo = new GenericFoo<String>(); foo.setFooArray(strs); strs = foo.getFooArray();