public interface ObjectStream<T> extends AutoCloseable
Objects from a stream.
 
 Design Decision:
 This interface provides a means for iterating over the
 objects in a stream, it does not implement Iterator or
 Iterable because:
 
Iterator.next() and
 Iterator.hasNext() are declared as throwing no checked
 exceptions. Thus the IOExceptions thrown by read() would
 have to be wrapped in RuntimeExceptions, and the compiler would be
 unable to force users of this code to catch such exceptions.Iterable would mean either silently calling
 reset() to guarantee that all items were always seen on each
 iteration, or documenting that the Iterable only iterates over the remaining
 elements of the ObjectStream. In either case, users not reading the
 documentation carefully might run into unexpected behavior.ObjectStreamException| Modifier and Type | Method and Description | 
|---|---|
| default void | close()Closes the  ObjectStreamand releases all allocated
 resources. | 
| T | read()Returns the next object. | 
| default void | reset()Repositions the stream at the beginning and the previously seen object sequence
 will be repeated exactly. | 
T read() throws IOException
IOException - if there is an error during readingdefault void reset()
            throws IOException,
                   UnsupportedOperationException
IOException - if there is an error during reseting the streamUnsupportedOperationExceptiondefault void close()
            throws IOException
ObjectStream and releases all allocated
 resources. After close was called its not allowed to call
 read or reset.close in interface AutoCloseableIOException - if there is an error during closing the streamCopyright © 2018 The Apache Software Foundation. All rights reserved.