クラスAbstractQueue<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
型パラメータ:
E - このキューに保持されている要 の型
すべての実装されたインタフェース:
Iterable<E>, Collection<E>, Queue<E>
直系の既知のサブクラス:
ArrayBlockingQueue, ConcurrentLinkedQueue, DelayQueue, LinkedBlockingDeque, LinkedBlockingQueue, LinkedTransferQueue, PriorityBlockingQueue, PriorityQueue, SynchronousQueue

public abstract class AbstractQueue<E> extends AbstractCollection<E> implements Queue<E>
このクラスは、Queueのいくつかのオペレーションのスケルトン実装を提供します。 このクラスの実装は、ベース実装でnull要 が許可されていない 合に適しています。 メソッドaddremoveおよびelementは、それぞれofferpollおよびpeekに基づいていますが、falseまたはnullを介した失敗を示すかわりに例外をスローします。

このクラスを拡張するQueue実装では、null要 を挿入できないメソッドQueue.offer(E)を、Queue.peek()Queue.poll()Collection.size()およびCollection.iterator()メソッドとともに最小限定義する必要があります。 通常、追 メソッドもオーバーライドされます。 これらの要件を満たすことができない 合、AbstractCollectionのサブクラス化を考慮してく さい。

このクラスは、Java Collections Frameworkのメンバーです。

導入されたバージョン:
1.5
  • コンストラクタの詳細

    • AbstractQueue

      protected AbstractQueue()
      サブクラスにより使用されるコンストラクタです。
  • メソッドの詳細

    • add

      public boolean add(E e)
      容量制限に違反することなく、指定された要 をこのキューにすぐに挿入できる 合はそうします。成功した 合はtrueを返し、その時点で使用可能な空き 域が存在しない 合はIllegalStateExceptionをスローします。

      この実装は、offerが成功した 合はtrueを返し、成功しなかった 合はIllegalStateExceptionをスローします。

      定義:
      add、インタフェースCollection<E>
      定義:
      add、インタフェースQueue<E>
      オーバーライド:
      add、クラスAbstractCollection<E>
      パラメータ:
      e - 追 する要 
      戻り値:
      true (Collection.add(E)で指定されているとおり)
      スロー:
      IllegalStateException - 容量制限のために、この時点で要 を追 できない 合
      ClassCastException - 指定された要 のクラスが原 で、このキューにその要 を追 できない 合
      NullPointerException - 指定された要 がnullで、このキューがnull要 を許可しない 合
      IllegalArgumentException - この要 のあるプロパティが原 で、このキューにその要 を追 できない 合
    • remove

      public E remove()
      キューの先 を取得および削除します。 このメソッドは、キューが空の 合に例外をスローする点のみがpollメソッドと異なります。

      この実装では、キューが空でないかぎり、pollの結果が返されます。

      定義:
      remove、インタフェースQueue<E>
      戻り値:
      キューの先 
      スロー:
      NoSuchElementException - このキューが空の 合
    • element

      public E element()
      キューの先 を取得しますが、削除しません。 このメソッドは、キューが空の 合に例外をスローする点のみがpeekメソッドと異なります。

      この実装では、キューが空でないかぎり、peekの結果が返されます。

      定義:
      element、インタフェースQueue<E>
      戻り値:
      キューの先 
      スロー:
      NoSuchElementException - このキューが空の 合
    • clear

      public void clear()
      すべての要 をキューから削除します。 この呼出しが戻ると、キューは空になります。

      この実装では、nullが返されるまでpollを繰り返し起動します。

      定義:
      clear、インタフェースCollection<E>
      オーバーライド:
      clear、クラスAbstractCollection<E>
    • addAll

      public boolean addAll(Collection<? extends E> c)
      指定されたコレクション内のすべての要 をこのキューに追 します。 キューのaddAllをそれ自体に対して試行すると、IllegalArgumentExceptionになります。 また、オペレーションの進行中に指定されたコレクションが変更された 合の、このオペレーションの動作は定義されていません。

      この実装は、指定されたコレクションに対して処理を繰返し実行し、イテレータにより返される各要 をこのキューに 番に追 します。 要 (null要 を含めます)を追 しようとしているときにランタイ 例外が発生すると、関連する例外がスローされたときに正常に追 された要 の一部のみが発生する可能性があります。

      定義:
      addAll、インタフェースCollection<E>
      オーバーライド:
      addAll、クラスAbstractCollection<E>
      パラメータ:
      c - キューに追 される要 を含むコレクション
      戻り値:
      この呼出しの結果、このキューが変更された 合はtrue
      スロー:
      ClassCastException - i指定されたコレクションの要 のクラスが原 で、このキューに追 できなかった 合
      NullPointerException - 指定されたコレクション内にnull要 が含まれ、このキューがnull要 を許可しない 合。または指定されたコレクションがnullの 合
      IllegalArgumentException - 指定されたコレクションの要 のある特性が原 で、このキューに要 を追 できなかった 合。または指定されたコレクションがこのキューの 合
      IllegalStateException - 挿入制限のため、この時点で一部の要 を追 できない 合
      関連 目: