java I/O
I/OCreateing a good input/ouput (I/O) system is one of the most difficult tasks for a language designer. This is evidenced by the number of different approaches.The challenge seems to be in covering all possibilities. Not only are there differentsources and sinks of I/O that you want to communicate with(files,the console,networkconnections, etc.),but you need to talk to them in a whide variety of ways(sequential,random-access,buffered,binary,character, by lines,by words,etc.).
The File classTypes of InputStreamInputStream's job is to represent classes that produce input from different sources. These sources can be:1. An array of bytes.2. A String object.3. A file.4. A "pipe",which works like a physical pipe: You put things in at one end and they comeout the other.5. A sequence of other streams, so you can collect them together into a single stream.6. Other sources, such as an Internet connection. (This is covered in Thinking in Enterprise Java.
ByteArrayInputStream,StringBufferInputStream,FileInputStream,pipedInputStream,SequenceInputStream,
FilterInputStream: Abstract class that is an interface for decorators that provide useful functionality to the other InputStream classes.
The File classTypes of InputStreamInputStream's job is to represent classes that produce input from different sources. These sources can be:1. An array of bytes.2. A String object.3. A file.4. A "pipe",which works like a physical pipe: You put things in at one end and they comeout the other.5. A sequence of other streams, so you can collect them together into a single stream.6. Other sources, such as an Internet connection. (This is covered in Thinking in Enterprise Java.
ByteArrayInputStream,StringBufferInputStream,FileInputStream,pipedInputStream,SequenceInputStream,
FilterInputStream: Abstract class that is an interface for decorators that provide useful functionality to the other InputStream classes.