diff -r fd16c54261b3 -r 90ce3da70b43 jdk/src/share/classes/java/nio/package.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/jdk/src/share/classes/java/nio/package.html Sat Dec 01 00:00:00 2007 +0000 @@ -0,0 +1,139 @@ + + + + +
+ +Defines buffers, which are containers for data, and provides an overview of the +other NIO packages. + + +The central abstractions of the NIO APIs are:
+ +Buffers, which are containers for data; +
Charsets and their
+ associated decoders and encoders,
which translate between
+ bytes and Unicode characters;
Channels of
+ various types, which represent connections
to entities capable of
+ performing I/O operations; and
Selectors and selection keys, which together with
+ selectable channels define a multiplexed, non-blocking
+ I/O facility.
The java.nio package defines the buffer classes, which are used
+throughout the NIO APIs. The charset API is defined in the {@link
+java.nio.charset} package, and the channel and selector APIs are defined in the
+{@link java.nio.channels} package. Each of these subpackages has its own
+service-provider (SPI) subpackage, the contents of which can be used to extend
+the platform's default implementations or to construct alternative
+implementations.
+
+
+
+
+ Buffers Description A buffer is a container for a fixed amount of data of a specific
+primitive type. In addition to its content a buffer has a position,
+which is the index of the next element to be read or written, and a
+limit, which is the index of the first element that should not be read
+or written. The base {@link java.nio.Buffer} class defines these properties as
+well as methods for clearing, flipping, and rewinding, for
+marking the current position, and for resetting the position to
+the previous mark.
+
+ There is a buffer class for each non-boolean primitive type. Each class
+defines a family of get and put methods for moving data out of
+and in to a buffer, methods for compacting, duplicating, and
+slicing a buffer, and static methods for allocating a new buffer
+as well as for wrapping an existing array into a buffer.
+
+ Byte buffers are distinguished in that they can be used as the sources and
+targets of I/O operations. They also support several features not found in the
+other buffer classes:
+
+ A byte buffer can be allocated as a
+ direct buffer, in which case the Java virtual machine will make a
+ best effort to perform native I/O operations directly upon it. A byte buffer can be created by {@link
+ java.nio.channels.FileChannel#map mapping A byte buffer provides access to its content as either a heterogeneous
+ or homogeneous sequence of binary data
+ of any non-boolean primitive type, in either big-endian or little-endian byte order. Unless otherwise noted, passing a null argument to a constructor
+or method in any class or interface in this package will cause a {@link
+java.lang.NullPointerException NullPointerException} to be thrown.
+
+@since 1.4
+@author Mark Reinhold
+@author JSR-51 Expert Group
+
+
+
+
+
+
+
+ {@link java.nio.Buffer}
+ Position, limit, and capacity;
+
clear, flip, rewind, and mark/reset
+ {@link java.nio.ByteBuffer}
+ Get/put, compact, views; allocate, wrap
+ {@link java.nio.MappedByteBuffer}
+ A byte buffer mapped to a file
+ {@link java.nio.CharBuffer}
+ Get/put, compact; allocate, wrap
+ {@link java.nio.DoubleBuffer}
+ ' '
+ {@link java.nio.FloatBuffer}
+ ' '
+ {@link java.nio.IntBuffer}
+ ' '
+ {@link java.nio.LongBuffer}
+ ' '
+ {@link java.nio.ShortBuffer}
+ ' '
+{@link java.nio.ByteOrder}
+ Typesafe enumeration for byte orders
+
+
+
+} a region of a
+ file directly into memory, in which case a few additional file-related
+ operations defined in the {@link java.nio.MappedByteBuffer} class are
+ available.