Junior — Middle
Can you name the main classes for working with threads in Java?
sobes.tech AI
Answer from AI
In Java, the following main classes are used for input-output streams:
- InputStream and OutputStream — basic abstract classes for reading and writing bytes.
- Reader and Writer — basic abstract classes for reading and writing characters (text).
- Concrete implementations:
FileInputStream/FileOutputStream— for working with files at the byte level.FileReader/FileWriter— for working with files at the character level.BufferedInputStream/BufferedOutputStream— buffered streams for performance enhancement.BufferedReader/BufferedWriter— buffered character streams.DataInputStream/DataOutputStream— for reading and writing primitive data types.ObjectInputStream/ObjectOutputStream— for object serialization.
In Android, these classes are used similarly, as Android is based on Java. Buffering and wrappers are often used for convenience and efficiency.
Example of reading a file using BufferedReader:
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
Thus, the main classes for streams are InputStream/OutputStream and Reader/Writer with their numerous implementations.