请问static final资源是什么时候会被标识为可回收的

Sodino 2009-12-04 03:23:04
我有一个Image属性标识为static final。由于是final,所以初始化后就不可能再被赋值为null了。那是不是说这个Image就会一直存在于内存直到这个程序被我关闭掉才会被回收呢??


谢谢...
...全文
407 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dxhangel 2009-12-04
  • 打赏
  • 举报
回复
因为是static类型的。只能是等到jvm停止的时候才能释放!
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 sodino 的回复:]
引用 1 楼 smartcatiboy 的回复:
回收是垃圾处理器的事,关掉也不一定回收

普通方法隶属于用户类,static方法属于用户类的meta类(可以用于yourClass.getClass获得)
只要该用户类有引用,meta类就不会被回收。木引用的化就看垃圾回收器的心情了。


怎么扯上meta了??

[/Quote]

static 不是储存在用户类的对象中的,而是储存在描述用户类的meta类的对象中的。用户类实例化前要先实例meta类中的各个static
Sodino 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 smartcatiboy 的回复:]
回收是垃圾处理器的事,关掉也不一定回收

普通方法隶属于用户类,static方法属于用户类的meta类(可以用于yourClass.getClass获得)
只要该用户类有引用,meta类就不会被回收。木引用的化就看垃圾回收器的心情了。
[/Quote]

怎么扯上meta了??


[Quote=引用 2 楼 lxd520123 的回复:]
这个JAVA里有自动回收,设置NULL就是一个申请//已经是final了,不能再重新赋值为null了

你这样情况具体没操作过,但是我觉得使用finallize应该能强制回收吧//finalize()只是在回收前进行一些处理操作,跟这问题有什么关系呢??
[/Quote]

[Quote=引用 3 楼 bayougeng 的回复:]
是你理解的那样。
[/Quote]

谢谢

[Quote=引用 4 楼 smartcatiboy 的回复:]
java内存的回收由垃圾回收处理,finalize一般只用于使用本地代码的是内存释放工作(垃圾回收管不了),在纯java程序里,尽量不要自己写finalize。

如果需要强制回收不用的东西,可以使用System.gc()。//gc()也只是通知VM说我想执行回收操作,只是想而已,又不是真的做。与本问题无关
[/Quote]

[Quote=引用 5 楼 zhangwenmin 的回复:]
如果程序中没有引用那么会被系统垃圾回收
[/Quote]
我想这个引用是一直在的,那应该就是回收不了的了,

[Quote=引用 6 楼 lxd520123 的回复:]
System.gc()也要看垃圾处理器的心情的,也是不一定管用的
so
这个事情还是让JAVA自己来吧,不伤大雅的
[/Quote]
唉,好无奈啊。
bunrise 2009-12-04
  • 打赏
  • 举报
回复
System.gc()也要看垃圾处理器的心情的,也是不一定管用的
so
这个事情还是让JAVA自己来吧,不伤大雅的
zhangwenmin 2009-12-04
  • 打赏
  • 举报
回复
如果程序中没有引用那么会被系统垃圾回收
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
java内存的回收由垃圾回收处理,finalize一般只用于使用本地代码的是内存释放工作(垃圾回收管不了),在纯java程序里,尽量不要自己写finalize。

如果需要强制回收不用的东西,可以使用System.gc()。
bayougeng 2009-12-04
  • 打赏
  • 举报
回复
是你理解的那样。
bunrise 2009-12-04
  • 打赏
  • 举报
回复
这个JAVA里有自动回收,设置NULL就是一个申请

你这样情况具体没操作过,但是我觉得使用finallize应该能强制回收吧
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
回收是垃圾处理器的事,关掉也不一定回收

普通方法隶属于用户类,static方法属于用户类的meta类(可以用于yourClass.getClass获得)
只要该用户类有引用,meta类就不会被回收。木引用的化就看垃圾回收器的心情了。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧