InputStream abstract, parent of all xxxInputStream. Abstract method: read(). Common method: close(), mark(int), reset(), skip(long).
FileInputStream extends InputStream, Low level read, Reads file data as bytes. in.read() != -1
ObjectInputStream extends InputStream, Deserializes Java objects from InputStream. in.readObject()
FilteredInputStream extends InputStream, Protected constructor, must be extended, decorator pattern
BufferedInputStream extends FilteredInputStream, Reads byte data from InputStream with buffer. in.read(byte[]) > 0
OutputStream abstract, parent of all xxxOutputStream. Abstract method: write(int). Common method: flush(), close().
FileOutputStream extends OutputStream, Low level write, Writes file data as bytes. out.write(int)
ObjectOutputStream extends OutputStream, Serializes Java objects to OutputStream. out.writeObject(Object)
FilteredOutputStream extends OutputStream, Protected constructor, must be extended, decorator pattern
BufferedOutputStream extends FilteredOutputStream. Writes byte data to OutputSteam with buffer. out.write(byte[], int, int)