5.1 EnrolleeLocatorクラスとIterableインタフェース

プログラム

F5_1

プログラムの説明

EnrolleeLocatorクラスとIterableインタフェース

EnrolleeLocatorクラスはListインターフェース(ArrayListクラス)に処理を「委譲」しています。EnrolleeLocatorクラスの役割は直接に可変長配列を使用せず、間接的にEnrolleeインスタンス専用の可変長配列を実現することです。

この場合のLocatorの意味は、目的のもの(Enrollee)が存在する場所を示しています。

EnrolleeLocatorクラスのインスタンスを拡張for制御文で使用するには、Iterableインターフェースを実装する必要があります。

ただし、要素の型がEnrollee型になるため、Iteratorへの依存関係が生じます。

注意

EnrolleeLocatorクラスからはクラス間の関係としてListインターフェース(ArrayListクラス)へも関連の関係がありますが、これらは可変長配列を実現するためのものと考えます。

そのため、要素であるEnrolleeへの集約を付けることで省略しています。