我很難理解帶繼承的泛型。我得到的錯誤是:繼承和泛型的構造方法問題
Stage.java:66: error: constructor Stage in class Stage<T> cannot be applied to given types;
{
^
required: ArrayList<T>,double,ArrayList<T>
found: no arguments
reason: actual and formal argument lists differ in length
where T is a type-variable:
T extends Object declared in class Stage
我所擁有的是一個名爲Stage0(Stage的內聯類)的子類,它繼承自Stage。 Stage0將具有基本相同的功能欄 - Stage0將@從其父類中覆蓋一個方法。 這裏是從舞臺類的63號線(這是STAGE0的開始)
class Stage0 extends Stage<T>
{
Stage0(ArrayList<T> inQ, double inputTime, ArrayList<T> outQ)
{
inputQueue = inQ;
takesTime = inputTime;
outputQueue = outQ;
}
@Override
public boolean isStarving(double time)
{
return false;
}
}
什麼是我的錯誤的根源?
乾杯。
public class Stage<T> // equivalent to a 'storage'
{
private T holdItem;
private boolean blocked;
private double takesTime, timeTaken, blockedTime, starveTime;
private ArrayList<T> inputQueue, outputQueue;
public Stage(ArrayList<T> inQ, double inputTime, ArrayList<T> outQ)
{
inputQueue = inQ;
takesTime = inputTime;
outputQueue = outQ;
}
請給Stage類的代碼。 – jelleB
@jelleB已添加舞臺代碼。 T.J.已經解決了這個問題。我將標記這樣解決的問題。歡呼:) – fOrceez