Zpo-2-wyk-Slajd12

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Queue: specyfikacja

Queue: specyfikacja


Interfejs ten reprezentuje kolejkę – klasyczną strukturę danych, w której wyróżnione są dwa elementy: głowa (ang. head ) – pierwszy element, do którego można się w każdej chwili odwołać, i ogon (ang. tail ) – kolejkę będącą pozostałością po odcięciu głowy. Zmiana polega tutaj na innym sposobie dostępu: odwołania dotyczą głowy, którą można odczytać i usunąć, natomiast dostęp do ogona jest możliwy dopiero po usunięciu dotychczasowej głowy (głową staje się pierwszy element ogona). Posługiwanie się w kolejkach metodami zdefiniowanymi dla Collection wydaje się nieuzasadnione, jeżeli metody mają swoje odpowiedniki w interfejsie Queue. Widać w ten sposób, że jest to nowy interfejs w JDK, który nie do końca odpowiada pierwotnym założeniom dotyczącym rozkładu odpowiedzialności poszczególnych interfejsów i klas.

W większości przypadków kolejki są skonstruowane w ten sam sposób do listy. Wskazują na to istniejące w JDK implementacje, np. LinkedList, które jednocześnie implementują interfejsy List i Queue. Dzięki temu ten sam obiekt może pełnić dwie różne role, w zależności od kontekstu.


<< Poprzedni slajd | Spis treści | Następny slajd >>