Hi,
General Idea ::
---------------
Probably the most often used items from the System class are the the standard output and standard error streams, which you use to display text to the user. The standard output stream is typically used for command output, to display the results of a command to the user. The standard error stream is typically used to display any errors that occur when a program is running.
Explaination ::
---------------
System.out leads the output to the standard output stream
(normally mapped to your console screen), System.err leads the
output to the standard error stream (by default the console, too).
The standard output should be used for regular program output,
the standard error for errormessages. If you start your console
program regularly both message types will appear on your screen.
But you may redirect both streams to different destinations (e.g. files),
e.g. if you want to create an error log file where you don't want to be
the regualr output in.
On an UNIX you may redirect the output as follows:
java yourprog.class >output.log 2>error.log
this causes your regular output (using System.out) to be stored in
output.log and your error messages (using System.err) to be stored
in error.log
System.err is a "special" pipe that usually is directed
to the standard consolle. You can redirect the System.out with the
normal pipe control (| or >
, but System.err no. If you want to put
both the "normal" output and the "error" output to a file you must
use the special redirect 2>.
This allow you to send normal messages into a file or in the /null
black hole, but still receive the error messages on the console.
Thanxs
Sheetal