當我們new一個java流對象之后,不僅在計算機內存中創建了一個相應類的實例對象。而且,還占用了相應的系統資源,比如:文件句柄、端口、數據庫連接等。在內存中的實例對象,當沒有引用指向的時候,java垃圾收集器會按照相應的策略自動回收,但是卻無法對系統資源進行釋放。所以,我們需要主動調用close()方法釋放java流對象。在java7之后,可以使用try-with-resources語句來釋放java流對象,從而避免了try-catch-finally語句的繁瑣,尤其是在finally子句中,close()方法也會拋出異常。