Предлагаю больше не изобретать велосипед.Интерфейс Queue
, уже находящийся в библиотеке времени выполнения Java, определяет операции, которые должна выполнять очередь.Вот краткое руководство по для интерфейса Queue и JavaDoc Queue.Ну, вот также пример использования реализаций очереди .
Вы можете создать объект очереди уведомлений, например так:
Queue<NotificationEvent> eventQueue = new LinkedList<NotificationEvent>;
или, если вы настаиваете на том, чтобы вашсобственный тип для очереди:
public class extends LinkedList<NotificationEvent> {
/**
* Constructs an empty list.
*/
public NotificationQueue() {
}
/**
* Constructs a list containing the elements of the specified collection,
* in the order they are returned by the
* collection's iterator.
* @param c the collection whose elements are to be placed into this list
* @throws NullPointerException if the specified collection is null
*/
public NotificationQueue(Collection<? extends NotificationEvent> c) {
super(c);
}
}
...
NotificationQueue eventQueue == new NotificationQueue();
Примечание:LinkedList
- не единственная доступная реализация интерфейса Queue, посмотрите JavaDoc очереди для других реализаций, уже доступных в библиотеках времени выполнения Java.Конечно, вы также можете написать собственную реализацию интерфейса Queue.