- System.err.println是运行期异常和错误反馈的输出流的方向
- 标准输出往往是带缓存,而标准出错没有缓存
与System.out.println混用会导致输出顺序错乱
public class TestCodeSeg { static{ System.out.println("1"); } { System.out.println("2"); } public TestCodeSeg(){ System.err.println("3"); } public static void main(String[] args){ new TestCodeSeg(); //可能3/n 1 /n 2,因为out输出有缓存,err是立即输出,所以混用会导致3与1、2顺序错乱 } }
- 所以,一旦用了哪一个就始终只用那个
- 代码实例:SpringMvc02/TestCodeSeg