2012-01-26 19 views
1

私は関数がeventIterable()の6つの異なるクラスにあり、名前はそれぞれ異なります。これらのクラスはObject[]に保存されています。異なるクラスの同じ関数を呼び出す

私はカスタムのArrayListクラスを持っています(私は自分自身で長いストーリーを作成しなければなりませんでした。私は標準のものを使用することを迷わずにいました)、その中にArrayListからインデックスにアクセスできます。

これらのクラスオブジェクトはそれぞれ、配列リストのインデックスに格納されます。しかし、配列の型はObjectなので、関数を呼び出すことはできません。 Objectからクラスのそれぞれが一意であるため、特定のクラスに変更することはできません。しかし彼らはすべてeventIterable()の機能を共有しています。

目的は、ArrayListのすべてのクラスを繰り返し処理し、各クラス内でeventIterable()関数を実行できるようにすることです。

答えて

8

eventIterable()メソッドを含むインターフェイスを作成し、すべてのクラスでそのインターフェイスを実装する必要があります。

オブジェクトの一覧ではなく、そのインターフェイスの一覧を使用できます。

5

eventIterableという1つのメソッドを持つこの動作(それがわかりにくい)を表すインターフェイスを作成します。次に、戻り値の型をこのインタフェースに変更します。

関連する問題