1

これが私の問題です。とまったく同じように、複数の静的メソッドで作成できるプライベートコンストラクターを持つクラスが必要ですBox.createHorizontalBox()。複雑になるのは、このクラスがジェネリックを使用する場合です。

これを正しく行う方法を教えてください:

private WorkFlow(int _arrowSize) {
  this.arrowSize = _arrowSize;
  this.elements = new ArrayList<T>();
}

public static WorkFlow<T> createHorizontalWorkFlow<T>(int _arrowSize) {
  WorkFlow<T> workFlow = new WorkFlow<T>(_arrowSize);
  workFlow.vertical = false;
  return workFlow;
}

これは機能していません:EclipseはintfromcreateHorizontalWorkFlow<T>(int _arrowSize)に下線を引き、エラーを表示しますSyntax error on token(s), misplaced construct(s)

4

1 に答える 1

5

これを試して:

public static <T> WorkFlow<T> createHorizontalWorkFlow(int _arrowSize) {
  WorkFlow<T> workFlow = new WorkFlow<T>(_arrowSize);
  workFlow.vertical = false;
  return workFlow;
}

あなたはかなり近かった。間違った場所にありました-戻り型の<T>にジェネリック型を宣言する必要があります。

于 2011-06-23T13:09:30.570 に答える