这两种方法有什么区别?
public <T extends Serializable, Y extends List<T>> void foo(Y y, T t);
并且
public void foo(Serializable ser, List<Serializable> list);
Y y2 = foo(y1, t1);
在第二个例子中是行不通的。你需要这样写:Y y2 = (Y) foo(y1, t1);
- Arnaud Denoyellevoid
。 - Sotirios DelimanolisList<T>
,您在示例中使用。 - Mickäel A.List<T>
而不是List<Serializable>
。 - Mickäel A.public <T extends Serializable> void foo(List<T> y, T t);
。因为Y
只在参数类型中使用了一次,所以它是不必要的。 - newacct