>>184
JavaVM に限らずファイルディスクリプタなどのリソースはそのプロセスが
終了したときに開放されるようになっている。プログラムの中で明示的に
close() が必要な理由は、終了まで開きっぱなしだとリソースを圧迫する
からだ。とはいえ標準入力はシステム上に 1 つであり、それ以上開くこと
はない。

まぁ標準入出力を閉じないってのは慣例的な意味合いが強いがな。自分が
開いたものだけをクローズする、システムから貰ったものはシステムに
任せる、が基本だ。

もし明示的に close() する必要があるとすれば、標準入力が別のプロセス
にパイプされていたり、ファイルやデバイスからリダイレクトされていたり
するケースくらいか。それも苦肉の策だが。