AI-generated Key Takeaways
-
The
ObjectInputinterface defines methods for reading serialized objects from a stream. -
It extends the
DataInputandAutoCloseableinterfaces, inheriting methods for reading primitive data types and closing the stream. -
The
readObject()method is central to this interface, allowing the reading of complete objects from the stream. -
Methods like
read(),skip(), andavailable()provide control over the reading process, enabling byte-by-byte reading, skipping bytes, and checking for available data. -
The interface handles potential exceptions like
IOExceptionfor stream errors andClassNotFoundExceptionif the object's class is not found during deserialization.
| Known Indirect Subclasses |
Defines an interface for classes that allow reading serialized objects.
See Also
Public Method Summary
| abstract int |
available()
Indicates the number of bytes of primitive data that can be read without
blocking.
|
| abstract void |
close()
Closes this stream.
|
| abstract int |
read()
Reads a single byte from this stream and returns it as an integer in the
range from 0 to 255.
|
| abstract int |
read(byte[] buffer, int offset, int count)
Reads at most
count bytes from this stream and stores them in
byte array buffer starting at offset count. |
| abstract int |
read(byte[] buffer)
Reads bytes from this stream into the byte array
buffer. |
| abstract Object |
readObject()
Reads the next object from this stream.
|
| abstract long |
skip(long byteCount)
Skips
byteCount bytes on this stream. |
Inherited Method Summary
Public Methods
public abstract int available ()
Indicates the number of bytes of primitive data that can be read without blocking.
Returns
- the number of bytes available.
Throws
| IOException | if an I/O error occurs. |
|---|
public abstract void close ()
Closes this stream. Implementations of this method should free any resources used by the stream.
Throws
| IOException | if an I/O error occurs while closing the input stream. |
|---|
public abstract int read ()
Reads a single byte from this stream and returns it as an integer in the range from 0 to 255. Returns -1 if the end of this stream has been reached. Blocks if no input is available.
Returns
- the byte read or -1 if the end of this stream has been reached.
Throws
| IOException | if this stream is closed or another I/O error occurs. |
|---|
public abstract int read (byte[] buffer, int offset, int count)
Reads at most count bytes from this stream and stores them in
byte array buffer starting at offset count. Blocks while
waiting for input.
Parameters
| buffer | the array in which to store the bytes read. |
|---|---|
| offset | the initial position in buffer to store the bytes read
from this stream. |
| count | the maximum number of bytes to store in buffer. |
Returns
- the number of bytes read or -1 if the end of this stream has been reached.
Throws
| IOException | if this stream is closed or another I/O error occurs. |
|---|
public abstract int read (byte[] buffer)
Reads bytes from this stream into the byte array buffer. Blocks
while waiting for input.
Parameters
| buffer | the array in which to store the bytes read. |
|---|
Returns
- the number of bytes read or -1 if the end of this stream has been reached.
Throws
| IOException | if this stream is closed or another I/O error occurs. |
|---|
public abstract Object readObject ()
Reads the next object from this stream.
Returns
- the object read.
Throws
| ClassNotFoundException | if the object's class cannot be found. |
|---|---|
| IOException | if this stream is closed or another I/O error occurs. |
public abstract long skip (long byteCount)
Skips byteCount bytes on this stream. Less than byteCount byte are
skipped if the end of this stream is reached before the operation
completes.
Parameters
| byteCount |
|---|
Returns
- the number of bytes actually skipped.
Throws
| IOException | if this stream is closed or another I/O error occurs. |
|---|