Класс 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.
- С момента:
- 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.
- Указано в:
-
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()
Эта реализация многократно вызывает poll, пока не вернется null.
- Указано в:
-
clearв интерфейсеCollection<E> - Переопределяет:
-
clearв классеAbstractCollection<E>
addAll
public boolean addAll(Collection<? extends E> c)
IllegalArgumentException. Кроме того, поведение этой операции не определено, если указанная коллекция изменяется во время выполнения операции. Эта реализация перебирает указанную коллекцию и добавляет каждый элемент, возвращенный итератором, в эту очередь по очереди. Исключение времени выполнения, возникшее при попытке добавить элемент (включая, в частности, null элемент), может привести к тому, что некоторые элементы будут успешно добавлены, когда будет сгенерировано соответствующее исключение.
- Указано в:
-
addAllв интерфейсеCollection<E> - Переопределяет:
-
addAllв классеAbstractCollection<E> - Параметры:
-
c- коллекция, содержащая элементы, которые должны быть добавлены в эту очередь - Возвращает:
-
true, если эта очередь изменилась в результате вызова - Исключения:
-
ClassCastException- если класс элемента указанной коллекции препятствует его добавлению в эту очередь -
NullPointerException- если указанная коллекция содержит null-элемент, а эта очередь не допускает null-элементов, или если указанная коллекция равна null -
IllegalArgumentException- если какое-либо свойство элемента указанной коллекции препятствует его добавлению в эту очередь, или если указанная коллекция является этой очередью -
IllegalStateException- если не все элементы могут быть добавлены в данный момент из-за ограничений вставки - См. также:
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/AbstractQueue.html