在Java中,它会自动释放GC释放的内存资源。但是我们不仅拥有内存资源,而且还拥有非内存资源,例如数据库连接,网络连接,文件句柄等,因此还需要释放它(不仅仅是垃圾回收) )完成时。

所以,我的问题是,如果不处理(释放)java中的非内存资源,我们可能会遇到什么问题?

请指导我摆脱对此的明确想法...

最佳答案

一个例子就是。
当您使用诸如FileInputStream之类的API时,这是您所调用的非内存资源之一。当您完成从文件中读取内容后,又忘记关闭它,那么系统将占用该文件,直到程序结束。在使用期间,您可能无法打开此文件。就是这样。

10-07 18:59