所以我有3个类。Java泛型的问题
Abstract class A
Class B extends class A
independent Class C
在包含main方法的类d,我创建类B的实例的列表
List<B> b = methodCall(); // the method returns a list of instances of class B
现在类CI有一个方法,是共同的A和B两者,并且因此我不想复制它。我想有一个方法,作为输入类A的一个实例,如下所示:
public void someMethod(List<A> a)
然而,当我这样做:
C c = new C();
c.someMethod(b);
我得到一个错误,有些法不适用对于参数List<B>
,而是期望得到List<A>
。
有没有很好的方法来解决这个问题? 非常感谢!
这不是一个问题,继承,这是一个仿制药的问题。查看泛型教程。对于这类问题,这是一个很好的参考:http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf – 2010-06-10 18:04:09
你能否包含实际的函数定义和错误的副本? – VeeArr 2010-06-10 18:04:59