Класс 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 элементов. Методы add, remove и element основаны на offer, poll и peek соответственно, но вместо этого выбрасывают исключения, указывая на неудачу посредством false или null возвратов. Реализация Queue класса, расширяющего этот класс, должна по меньшей мере определять метод Queue.offer(E), который не допускает вставки null элементов, а также методы Queue.peek(), Queue.poll(), Collection.size() и Collection.iterator(). Как правило, будут переопределены и дополнительные методы. Если эти требования не могут быть выполнены, рассмотрите вместо этого наследование от AbstractCollection.
Этот класс является членом Java Collections Framework.
- Since:
- 1.5
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор для использования подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
add |
Вставляет указанный элемент в эту очередь, если это возможно сделать немедленно без нарушения ограничений по емкости, возвращая true при успехе и выбрасывая IllegalStateException при отсутствии места. |
boolean |
addAll |
Добавляет все элементы из указанного набора в эту очередь. |
void |
clear() |
Удаляет все элементы из этой очереди. |
E |
element() |
Возвращает, но не удаляет, голову этой очереди. |
E |
remove() |
Возвращает и удаляет голову этой очереди. |
Методы, объявленные в классе java.util.AbstractCollection
contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, toArray, toArray, toString
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе java.util.Collection
contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray
Подробное описание конструкторов
AbstractQueue
protected AbstractQueue()
Подробное описание методов
add
public boolean add(E e)
true при успехе и выбрасывая IllegalStateException при отсутствии места. Эта реализация возвращает true если offer завершается успешно, в противном случае выбрасывает IllegalStateException.
- Specified by:
-
addв интерфейсеCollection<E> - Specified by:
-
addв интерфейсеQueue<E> - Overrides:
-
addв классеAbstractCollection<E> - Параметры:
-
e- добавляемый элемент - Возвращает:
-
true(как указано вCollection.add(E)) - Исключение:
-
IllegalStateException- если элемент не может быть добавлен в данный момент из-за ограничений по емкости -
ClassCastException- если класс указанного элемента препятствует его добавлению в эту очередь -
NullPointerException- если указанный элемент равен null, и эта очередь не допускает null-элементов -
IllegalArgumentException- если какая-либо характеристика этого элемента препятствует его добавлению в эту очередь
remove
public E remove()
poll только тем, что выбрасывает исключение, если эта очередь пуста. Эта реализация возвращает результат poll если очередь не пуста.
- Specified by:
-
removeв интерфейсеQueue<E> - Возвращает:
- голова этой очереди
- Исключение:
-
NoSuchElementException- если эта очередь пуста
element
public E element()
peek только тем, что выбрасывает исключение, если эта очередь пуста. Эта реализация возвращает результат peek если очередь не пуста.
- Specified by:
-
elementв интерфейсеQueue<E> - Возвращает:
- голова этой очереди
- Исключение:
-
NoSuchElementException- если эта очередь пуста
clear
public void clear()
Эта реализация многократно вызывает poll до тех пор, пока не вернёт null.
- Specified by:
-
clearв интерфейсеCollection<E> - Overrides:
-
clearв классеAbstractCollection<E>
addAll
public boolean addAll(Collection<? extends E> c)
IllegalArgumentException. Кроме того, поведение этой операции не определено, если указанный набор изменяется во время выполнения операции. Эта реализация итерируется по указанному набору и добавляет каждый элемент, возвращаемый итератором, в эту очередь по очереди. Исключение, возникающее во время попытки добавить элемент (включая, в частности, null элемент), может привести к тому, что только некоторые элементы будут успешно добавлены, когда будет выброшено связанное исключение.
- Specified by:
-
addAllв интерфейсеCollection<E> - Overrides:
-
addAllв классеAbstractCollection<E> - Параметры:
-
c- набор, содержащий элементы, которые необходимо добавить в эту очередь - Возвращает:
-
trueесли эта очередь изменилась в результате вызова - Исключение:
-
ClassCastException- если класс элемента указанного набора препятствует его добавлению в эту очередь -
NullPointerException- если указанный набор содержит null-элемент, и эта очередь не допускает null-элементов, или если указанный набор равен null -
IllegalArgumentException- если какая-либо характеристика элемента указанного набора препятствует его добавлению в эту очередь, или если указанный набор является этой очередью -
IllegalStateException- если не все элементы могут быть добавлены в данный момент из-за ограничений на вставку - См. также:
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/AbstractQueue.html