AbstractQueue — Queue 연산의 뼈대 구현

AbstractQueue — Queue 연산의 뼈대 구현

일부 Queue 연산의 뼈대 구현을 제공하는 추상 클래스예요.

출처: Java API Reference

본문

시그니처

public abstract class AbstractQueue<E> extends AbstractCollection<E>
    implements Queue<E>

타입 매개변수: E — 이 큐에 담긴 요소의 타입.

설명

이 클래스는 일부 Queue 연산의 뼈대 구현을 제공해요. 이 클래스의 구현은 기본 구현이 null 요소를 허용하지 않을 때 적절해요. add, remove, element 메서드는 각각 offer, poll, peek에 기반하지만, falsenull 반환으로 실패를 나타내는 대신 예외를 던져요.

이 클래스를 확장하는 Queue 구현은 최소한 null 요소 삽입을 허용하지 않는 Queue.offer(E) 메서드와 Queue.peek(), Queue.poll(), Collection.size(), Collection.iterator() 메서드를 정의해야 해요. 보통 추가 메서드도 오버라이드할 거예요. 이런 요구 사항을 충족할 수 없다면 AbstractCollection을 하위 클래스화하는 것을 대신 고려하세요.

이 클래스는 Java Collections Framework의 구성원이에요.

주요 메서드

  • add(E e) — 용량 제한을 위반하지 않고 즉시 가능하면 이 큐에 지정한 요소를 삽입하고, 성공 시 true를 반환하며 공간이 없으면 IllegalStateException을 던져요.
  • addAll(Collection<? extends E> c) — 지정한 컬렉션의 모든 요소를 이 큐에 추가해요.
  • clear() — 이 큐에서 모든 요소를 제거해요.
  • element() — 이 큐의 머리를 검색하되 제거하지는 않아요.
  • remove() — 이 큐의 머리를 검색하고 제거해요.

더 알아보기 (Learn more)