Spec-Zone.ru › OpenJDK 8

Класс 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 элементам. Методы 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.

С тех пор:
1.5

Конструкторы

Модификатор Конструктор и описание
protected AbstractQueue()

Конструктор для использования подклассами.

Методы

Модификатор и тип Метод и описание
boolean add(E e)

Вставляет указанный элемент в эту очередь, если это возможно сделать немедленно без нарушения ограничений на емкость, возвращая true при успехе и выбрасывая IllegalStateException , если в настоящее время нет места.

boolean addAll(Collection<? extends E> c)

Добавляет все элементы в указанной коллекции в эту очередь.

void clear()

Удаляет все элементы из этой очереди.

E element()

Возвращает, но не удаляет, голову этой очереди.

E remove()

Возвращает и удаляет голову этой очереди.

Методы, унаследованные от класса java.util.AbstractCollection

contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Методы, унаследованные от интерфейса java.util.Queue

offer, peek, poll

Методы, унаследованные от интерфейса java.util.Collection

contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray

Методы, унаследованные от интерфейса java.lang.Iterable

forEach

Конструкторы

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)

Добавляет все элементы из указанной коллекции в эту очередь. Попытки добавитьAll очереди в себя приводят к IllegalArgumentException. Кроме того, поведение этой операции не определено, если указанная коллекция изменяется во время выполнения операции.

Эта реализация перебирает указанную коллекцию и добавляет каждый элемент, возвращаемый итератором, в эту очередь по очереди. Исключение времени выполнения, возникшее при попытке добавить элемент (включая, в частности, null элемент) может привести к успешному добавлению только некоторых элементов, когда соответствующее исключение выбрасывается.

Определено в:
addAll в интерфейсе Collection<E>
Переопределяет:
addAll в классе AbstractCollection<E>
Параметры:
c - коллекция, содержащая элементы, которые нужно добавить в эту очередь
Возвращает:
true , если эта очередь изменилась в результате вызова
Исключения:
ClassCastException - если класс элемента указанной коллекции препятствует его добавлению в эту очередь
NullPointerException - если указанная коллекция содержит null-элемент, и эта очередь не допускает null-элементов, или если указанная коллекция равна null
IllegalArgumentException - если какое-либо свойство элемента указанной коллекции препятствует его добавлению в эту очередь, или если указанная коллекция является этой очередью
IllegalStateException - если не все элементы могут быть добавлены в данный момент из-за ограничений на вставку
См. также:
add(Object)

© 1993, 2020, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API