java基礎(chǔ)(System.err和System.out)詳解
今天有位同事在使用System.err和System.out遇上了一些小問題.
看了些資料總結(jié)下:
1.JDK文檔對兩者的解釋:
out:“標準”輸出流。此流已打開并準備接受輸出數(shù)據(jù)。通常,此流對應(yīng)于顯示器輸出或者由主機環(huán)境或用戶指定的另一個輸出目標。
err:“標準”錯誤輸出流。此流已打開并準備接受輸出數(shù)據(jù)。通常,此流對應(yīng)于顯示器輸出或者由主機環(huán)境或用戶指定的另一個輸出目標。按照慣例,此輸出流用于顯示錯誤消息,或者顯示那些即使用戶輸出流(變量 out 的值)已經(jīng)重定向到通常不被連續(xù)監(jiān)視的某一文件或其他目標,也應(yīng)該立刻引起用戶注意的其他信息。
2.out和err的一個區(qū)別是,out往往是帶緩存的,而err沒有緩存(默認設(shè)置,可以改)。所以如果你用標準出錯打印出來的東西可以馬上顯示在屏幕,而標準輸出打印出來的東西可能要再積累幾個字符才能一起打印出來。如果你在應(yīng)用中混用標準輸出和標準出錯就可能看到這個問題。
測試代碼:
public class Test2 { static{ System.out.println("1"); } public static void main(String[] args) { System.err.println("2"); new Test2(); } public Test2() { System.out.println("3"); } }
測試結(jié)果: 1,3的位置相對不變,2的位置隨機出現(xiàn).盡量避免混用!
3.如果使用了log4j的日志記錄,System.err會被記入日志,System.out不會
ps:打印System.err在eclipse是紅色的。System.out是藍色的。
以上這篇java基礎(chǔ)(System.err和System.out)詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺析Java中Apache BeanUtils和Spring BeanUtils的用法
這篇文章主要介紹了Java中Apache BeanUtils和Spring BeanUtils的用法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11java 實現(xiàn)將一個string保存到txt文檔中
今天小編就為大家分享一篇java 實現(xiàn)將一個string保存到txt文檔中的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07SpringBoot Session共享實現(xiàn)圖解
這篇文章主要介紹了SpringBoot Session共享實現(xiàn)圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-01-01java使用FuncGPT慧函數(shù)對Mybatis進行一對一查詢映射處理
這篇文章主要介紹了java使用FuncGPT慧函數(shù)對Mybatis進行一對一查詢映射處理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09