public static class Read3Strings extends Thread{
    String s1 = null;
    public void run(){
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        try {
            s1 = reader.readLine();
            s1 += " " + reader.readLine();
            s1 += " " + reader.readLine();
            //reader.close();
        }catch (IOException e){}
    }
}
Почему я не могу раскомментировать строку 9? В новой нити создаётся BufferReader, нить живёт какое-то время (мы её ждём /join/), потом она закрывается, и создаётся новая нить, но BufferReader уже закрыт и считывание не происходит. Да, можно не закрывать BufferReader и всё будет хорошо, но я хотел бы прояснить. Заранее спасибо! p.s. в задаче BufferReader создаётся статично, не в методе run, но это не суть.