java流为什么释放

java流为什么释放,第1张

1、文件流要释放

2、数据库连接资源要释放

3、在结合使用hibernate时,session要释放

在使用的时候,java的垃圾回收一般不用手动释放,但是可以调用方法进行调用以实现垃圾回收,在某种特定情况下会使用到因为java虚拟机无权直接访问硬盘,需要通过 *** 作系统访问,在结束后需要通知释放资源

虽然Java有自动内存回收机制,但是如果是数据库连接、网络连接、文件 *** 作等,不close是不会被回收的,属于不正确的代码。\x0d\x0a也就是说,有close方法,必须得自己调用一下才行。\x0d\x0a垃圾回收机制仅在Java虚拟机所控制的范围内释放资源。\x0d\x0a对于类似于数据库连接、socket以及文件 *** 作等,\x0d\x0a如果有close方法,在你完成任务后执行它\x0d\x0a并且最好在finally块内做close,因为即使发生了例外,这些代码也能被调用。\x0d\x0a对于使用完了的对象来讲,Java不推荐使用类似于C++的析构函数来释放内存(C++中new完后得delete,Java中new完,使用后,将其置\x0d\x0a成null比较好),因为GC会调节最适当的时间来释放内存,在程序中滥用delete会降低Java程序的性能(但应该不会引发额外的错误)。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10099791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存