最初に問題全体を書き留めておきます。
リングは、現在のアイテムへの参照を持つアイテムのコレクションです。操作(アドバンスと呼びましょう)は、コレクション内の次のアイテムへの参照を移動します。参照が最後の項目に到達すると、次の事前操作によって参照が最初の項目に戻ります。リングには、現在のアイテムを取得したり、アイテムを追加したり、アイテムを削除したりする操作もあります。アイテムが追加される場所と削除される場所の詳細は、あなた次第です。
オブジェクトのリングを表すADT(抽象データ型)を設計します。各操作を指定するには、その目的を示し、パラメーターを記述し、ヘッダーの擬似コードバージョンを記述します。次に、リングのメソッド用のJavaインターフェースを作成します。コードにjavadocスタイルのコメントを含めます。
つまり、Ringは、T = itemsのような参照変数を使用してアイテムを移動できる操作を備えたクラスのようなものですか?そして、Advanceは、呼び出されるたびに異なるアイテムを表すようにTを変更しますか?UML形式のようなもの...
ADT:リング
+advance(): T // move T to next item in collection and if T reaches last item, move T back to the first item.
+getCurrItem(): T // return item that T reference.
+addItem(item T): void // add an item in for T, No return.
+removeItem(Item: T): boolean // remove item that T reference and return true | false if it succeed or not.
私は正しい方向に進んでいますか、それとも何か他のことをすることになっていますか?