【发布时间】:2012-09-15 00:19:05
【问题描述】:
我正在尝试这样做:
public class BaseTable<T extends TableEntry>
{
protected int mRows;
protected int mCols;
protected ArrayList<T> mEntries;
public BaseTable(int rows, int cols)
{
mRows = rows;
mCols = cols;
mEntries = new ArrayList<T>();
for (int i = 0; i < rows; i++)
{
mEntries.add(new T(cols)); //this obv. doesn't work
}
}
}
实例化泛型已经够难了,但更难的是这里的T 没有默认构造函数,它的构造函数中只有一个int 参数。
如何做到这一点?
我也在这里问过follow up question。如果您也能回答这个问题,我将不胜感激。
此question 是相关的,但仅在假定类具有默认构造函数时才相关。
【问题讨论】:
标签: java generics instantiation default-constructor