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