public class Test2 
{  
    static  
    {  
        System.out.println("1");  
    }  
    {  
        System.out.println("2");  
    }  
    public Test2()  
    {  
        System.out.println("3");  
        System.err.println("3");
    }  
    public static void main(String[] args)  
    {  
        new Test2();  
    }  
}
System.err.println是立即输出,可能在输出1或2,还没有输出换行时输出3。
标准输出往往是带缓存的,而标准出错没有缓存(默认设置,可以改)error输出为红色
System.out.println与System.err.println的区别
原文:http://www.cnblogs.com/Yxxxxx/p/6854271.html