0
所有現代IDE都有可能在您進行調試時運行一段代碼。 Intellij Idea有「Watches」窗口,Eclipse有「Expressions」窗口。有趣的是,資源如何清洗,如果我作出這樣一個電話(conenction變量是java.sql.Connection中):IDE如何釋放資源?
connection.prepareCall("some sql function");
這產生CallableStatment,可能是幾倍,但是當它/他們將被關閉?或者這個CallableStatment將永遠存在?
你告訴過POJO。如果這樣的「對象」依賴於外部資源呢?例如,您不能等到GC銷燬ResultSet,因爲與它關聯的數據庫資源將存在。那就是問題所在。 – Cherry
除非您堅持使用資源並手動發佈它,否則就會泄漏,就像使用Java中的其他外部分配資源一樣。如果對象有一個終結器,可能會釋放資源,但由於無法保證終結器的執行,您可能會泄漏該資源。 – chrylis