Java Input/Output — Java Technical Interview Questions & Answers
Java Input/Output
Java Input/Output
- Input/Output is about reading or writing data outside the program — files, bytes, or characters. Byte streams (InputStream/OutputStream) handle raw bytes. Character streams (Reader/Writer) handle text.
- For Input/Output, always close resources. Prefer try-with-resources so close happens even if an error occurs. Buffered streams are faster for many small reads.
- Input/Output viva: serialization turns an object into bytes. transient fields are skipped. Don’t serialize secrets without a plan.
- Let's take this on the board with one tiny Main class — no extra files. Java Input/Output — output: Hello File. StringReader → StringWriter is the same read/write pattern as a real file, and this Main always runs. Start from main, go line by line, and stop at each print. That output is the proof for Input/Output.
Technical Interview Tip: Always mention closing resources in I/O answers.
Code Examples for Java Input/Output
Example
import java.io.*;
public class Main {
public static void main(String[] args) throws Exception {
String text = "Hello File";
try (StringReader in = new StringReader(text);
StringWriter out = new StringWriter()) {
int ch;
while ((ch = in.read()) != -1) out.write(ch);
System.out.println(out.toString());
}
}
}Java Input/Output — output: Hello File. StringReader → StringWriter is the same read/write pattern as a real file, and this Main always runs.
How to Explain Java Input/Output to an Interviewer
What is Input/Output?
Input/Output — I/O = read/write outside the program (file, bytes, text). Input/Output — byte streams for bytes, Reader/Writer for text, close with try-with-resources. Input/Output — buffered streams are faster for many small reads.
Why do we use Input/Output in Java?
Makes the program clearer or safer Input/Output — I/O = read/write outside the program (file, bytes, text).
Write one small example of Input/Output.
Show syntax Say what prints
What mistake do beginners make with Input/Output?
Only the name, no example Input/Output — forgetting to close, or serializing secrets.
Where is Input/Output used in a real program?
Day-to-day Java code