Почему мне не разрешено это делать?
public abstract class A {}
public class B extends A {}
...
public ArrayList<A> foo()
{
return new ArrayList<B>();
}
Я перешел на общедоступный, так как очень много людей любят указывать на глупые ошибки.
Почему я должен напишите ВСЕ этот код. Просто чтобы удовлетворить бессмысленность Java?
public List<A> foo()
{
List<A> aList = new ArrayList<A>();
List<B> bList = new ArrayList<B>();
/* fill bList*/
for (B b : bList)
{
aList.add(b);
}
return aList;
}