私は、Javaで訪問者と複合パターンを組み合わせるのに苦労しています。
コンポジット用のElementインターフェースがあります。acceptメソッドのみがあります。
子管理関数(add、remove、getChild)を処理するための抽象クラスCompositeがあります。各サブクラスで実行する必要がないように、compisteクラスでaccceptメソッドを定義したいと思います。それを行う方法はありますか?
public abstract class Composite implements Element {
protected List<Element> elements;
public Composite() {
elements = new ArrayList<Element>();
}
public void add(Element e) {
elements.add(e);
}
public void remove(Element e) {
elements.remove(e);
}
public Element getChild(int i) {
return elements.get(i);
}
}