首先,我們都知道當(dāng)我們new一個java流對象之后,不僅在計算機(jī)內(nèi)存中創(chuàng)建了一個相應(yīng)類的實(shí)例對象。而且,還占用了相應(yīng)的系統(tǒng)資源,比如:文件句柄、端口、數(shù)據(jù)庫連接等。
(相關(guān)學(xué)習(xí)視頻教程分享:java視頻教程)
在內(nèi)存中的實(shí)例對象,當(dāng)沒有引用指向的時候,java垃圾收集器會按照相應(yīng)的策略自動回收,但是卻無法對系統(tǒng)資源進(jìn)行釋放。所以,我們需要主動調(diào)用close()
方法釋放java流對象。
在java7之后,可以使用try-with-resources
語句來釋放java流對象,從而避免了try-catch-finally語句的繁瑣,尤其是在finally子句中,close()方法也會拋出異常。
相關(guān)文章教程推薦:java入門教程