Java 将列表类型复制到抽象列表

Java 将列表类型复制到抽象列表,java,abstract-class,type-conversion,abstract-data-type,Java,Abstract Class,Type Conversion,Abstract Data Type,我有两个从一个抽象类继承的类。这两个类指定要使用哪种类型的抽象列表,以及ArrayList或LinkedList public class ArrayListMergeSort extends MergeSortData { public ArrayListMergeSort() { super(); data= new ArrayList<String>(); } } 公共类ArrayListMergeSort扩展了MergeSortData { 公共

我有两个从一个抽象类继承的类。这两个类指定要使用哪种类型的抽象列表,以及ArrayList或LinkedList

public class ArrayListMergeSort extends MergeSortData
{
public ArrayListMergeSort()
   {
    super();
    data= new ArrayList<String>();
   }
}
公共类ArrayListMergeSort扩展了MergeSortData
{
公共ArrayListMergeSort()
{
超级();
数据=新的ArrayList();
}
}

我想知道如何根据列表数据的类型在抽象类中创建一个新的临时抽象列表?

您可以在抽象类
MergeSortData
中有一个抽象方法返回一个
list

public abstract List<String> getNewList();
抽象类的任何方法
MergeSortData
都可以调用
getNewList()
,以获得正确实现的新
List

List newList=data.getClass().newInstance();
List<String> newList = data.getClass().newInstance();

FGITW赢了……就在我键入相同答案时-(使用泛型可能是有意义的,这取决于您对它所做的操作。有关详细信息,请参阅。
List<String> newList = data.getClass().newInstance();