So I have 3 classes.
Abstract class A
Class B extends class A
independent Class C
In class D that contains the main method, I create a list of instances of class B
List<B> b = methodCall(); // the method returns a list of instances of class B
Now in class C I have one method that is common to both A and B, and hence I don't want to duplicate it. I want to have one method that takes as input an instance of class A, as follows:
public void someMethod(List<A> a)
However, when I do:
C c = new C();
c.someMethod(b);
I get an error that some-method is not applicable for the argument List<B>
, instead it's expecting to get List<A>
.
Is there a good way to fix this problem? Many thanks!