Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 java.base.jmod - Base Module
JDK 11 java.base.jmod is the JMOD file for JDK 11 Base module.
JDK 11 Base module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\java.base.jmod.
JDK 11 Base module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Base module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\java.base.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ java/util/Queue.java
/* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ /* * * * * * * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as explained at * http://creativecommons.org/publicdomain/zero/1.0/ */ package java.util; /** * A collection designed for holding elements prior to processing. * Besides basic {@link Collection} operations, queues provide * additional insertion, extraction, and inspection operations. * Each of these methods exists in two forms: one throws an exception * if the operation fails, the other returns a special value (either * {@code null} or {@code false}, depending on the operation). The * latter form of the insert operation is designed specifically for * use with capacity-restricted {@code Queue} implementations; in most * implementations, insert operations cannot fail. * * <table class="striped"> * <caption>Summary of Queue methods</caption> * <thead> * <tr> * <td></td> * <th scope="col" style="font-weight:normal; font-style:italic">Throws exception</th> * <th scope="col" style="font-weight:normal; font-style:italic">Returns special value</th> * </tr> * </thead> * <tbody> * <tr> * <th scope="row">Insert</th> * <td>{@link #add(Object) add(e)}</td> * <td>{@link #offer(Object) offer(e)}</td> * </tr> * <tr> * <th scope="row">Remove</th> * <td>{@link #remove() remove()}</td> * <td>{@link #poll() poll()}</td> * </tr> * <tr> * <th scope="row">Examine</th> * <td>{@link #element() element()}</td> * <td>{@link #peek() peek()}</td> * </tr> * </tbody> * </table> * * <p>Queues typically, but do not necessarily, order elements in a * FIFO (first-in-first-out) manner. Among the exceptions are * priority queues, which order elements according to a supplied * comparator, or the elements' natural ordering, and LIFO queues (or * stacks) which order the elements LIFO (last-in-first-out). * Whatever the ordering used, the <em>head</em> of the queue is that * element which would be removed by a call to {@link #remove()} or * {@link #poll()}. In a FIFO queue, all new elements are inserted at * the <em>tail</em> of the queue. Other kinds of queues may use * different placement rules. Every {@code Queue} implementation * must specify its ordering properties. * * <p>The {@link #offer offer} method inserts an element if possible, * otherwise returning {@code false}. This differs from the {@link * java.util.Collection#add Collection.add} method, which can fail to * add an element only by throwing an unchecked exception. The * {@code offer} method is designed for use when failure is a normal, * rather than exceptional occurrence, for example, in fixed-capacity * (or "bounded") queues. * * <p>The {@link #remove()} and {@link #poll()} methods remove and * return the head of the queue. * Exactly which element is removed from the queue is a * function of the queue's ordering policy, which differs from * implementation to implementation. The {@code remove()} and * {@code poll()} methods differ only in their behavior when the * queue is empty: the {@code remove()} method throws an exception, * while the {@code poll()} method returns {@code null}. * * <p>The {@link #element()} and {@link #peek()} methods return, but do * not remove, the head of the queue. * * <p>The {@code Queue} interface does not define the <i>blocking queue * methods</i>, which are common in concurrent programming. These methods, * which wait for elements to appear or for space to become available, are * defined in the {@link java.util.concurrent.BlockingQueue} interface, which * extends this interface. * * <p>{@code Queue} implementations generally do not allow insertion * of {@code null} elements, although some implementations, such as * {@link LinkedList}, do not prohibit insertion of {@code null}. * Even in the implementations that permit it, {@code null} should * not be inserted into a {@code Queue}, as {@code null} is also * used as a special return value by the {@code poll} method to * indicate that the queue contains no elements. * * <p>{@code Queue} implementations generally do not define * element-based versions of methods {@code equals} and * {@code hashCode} but instead inherit the identity based versions * from class {@code Object}, because element-based equality is not * always well-defined for queues with the same elements but different * ordering properties. * * <p>This interface is a member of the * <a href="{@docRoot}/java.base/java/util/package-summary.html#CollectionsFramework"> * Java Collections Framework</a>. * * @since 1.5 * @author Doug Lea * @param <E> the type of elements held in this queue */ public interface Queue<E> extends Collection<E> { /** * Inserts the specified element into this queue if it is possible to do so * immediately without violating capacity restrictions, returning * {@code true} upon success and throwing an {@code IllegalStateException} * if no space is currently available. * * @param e the element to add * @return {@code true} (as specified by {@link Collection#add}) * @throws IllegalStateException if the element cannot be added at this * time due to capacity restrictions * @throws ClassCastException if the class of the specified element * prevents it from being added to this queue * @throws NullPointerException if the specified element is null and * this queue does not permit null elements * @throws IllegalArgumentException if some property of this element * prevents it from being added to this queue */ boolean add(E e); /** * Inserts the specified element into this queue if it is possible to do * so immediately without violating capacity restrictions. * When using a capacity-restricted queue, this method is generally * preferable to {@link #add}, which can fail to insert an element only * by throwing an exception. * * @param e the element to add * @return {@code true} if the element was added to this queue, else * {@code false} * @throws ClassCastException if the class of the specified element * prevents it from being added to this queue * @throws NullPointerException if the specified element is null and * this queue does not permit null elements * @throws IllegalArgumentException if some property of this element * prevents it from being added to this queue */ boolean offer(E e); /** * Retrieves and removes the head of this queue. This method differs * from {@link #poll() poll()} only in that it throws an exception if * this queue is empty. * * @return the head of this queue * @throws NoSuchElementException if this queue is empty */ E remove(); /** * Retrieves and removes the head of this queue, * or returns {@code null} if this queue is empty. * * @return the head of this queue, or {@code null} if this queue is empty */ E poll(); /** * Retrieves, but does not remove, the head of this queue. This method * differs from {@link #peek peek} only in that it throws an exception * if this queue is empty. * * @return the head of this queue * @throws NoSuchElementException if this queue is empty */ E element(); /** * Retrieves, but does not remove, the head of this queue, * or returns {@code null} if this queue is empty. * * @return the head of this queue, or {@code null} if this queue is empty */ E peek(); }
⏎ java/util/Queue.java
Or download all of them as a single archive file:
File name: java.base-11.0.1-src.zip File size: 8740354 bytes Release date: 2018-11-04 Download
2020-05-29, 227486👍, 0💬
Popular Posts:
Saxon is an open source product available under the Mozilla Public License. It provides implementati...
JDK 11 jdk.localedata.jmod is the JMOD file for JDK 11 Localedata module. JDK 11 Locale Data module ...
JAX-WS is an API for building web services and clients. It is the next generation Web Services API r...
Old version of xml-apis.jar. JAR File Size and Download Location: File name: xmlParserAPIs.jar File ...
JLayer is a library that decodes/plays/converts MPEG 1/2/2.5 Layer 1/2/3 (i.e. MP3) in real time for...