継承のジェネリックスを理解するのに苦労しています。私は取得していますエラーは次のとおりです。私が持っていることは、ステージから継承STAGE0(ステージのインラインクラス)と呼ばれるサブクラスは継承とジェネリックに関するコンストラクタの問題
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は本質的に同じ機能バーを持ちます - 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;
}
}
私のエラーの原因は何ですか(STAGE0の始まりです)Stageクラスのライン63からでしょうか?
乾杯。
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