| At its lowest level, all Java I/O involves a stream of
bytes either entering or leaving memory as shown by this diagram: |
| |
|
| |
| Obviously, sending and receiving individual
bytes would be tedious and difficult for an application
to manage. For that reason, several packaged classes exist
that make it easy for a program to read and write larger units of data. |
| |
| Most programs use a "high-level" stream class object
that is "chained" (connected) to a "low-level" stream
class object. While the low-level stream class object
handles byte I/O, the high-level stream class object
will allow the program to read and write primitive
data values and even objects (as shown below). |
| |
|
| |
|