这样写会不会导致对象无法被回收

想喝咖啡的貓 2013-01-11 09:07:23
这样写会不会导致Test2的实例无法被回收?


package test0;

public interface ITest2 {
void showMessage();
}




package test0;

public class Test2 implements ITest2 {
private static final ITest2 instance = new Test2Impl1();

@Override
public void showMessage() {
instance.showMessage();
}

}




package test0;

class Test2Impl1 implements ITest2{

@Override
public void showMessage() {
System.out.println("hello world.");
}

}

...全文
164 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nmyangym 2013-01-11
  • 打赏
  • 举报
回复
让Test2重写了finalize()方法,里面输出点东西,发现可以回收的。(当然需要产生很多对象)。
snow-is-my-Love 2013-01-11
  • 打赏
  • 举报
回复
不会吧,应该是可以回收的。 主要还是看你的容器,怎么个回收机制。
BadPattern 2013-01-11
  • 打赏
  • 举报
回复
没有强引用就可能被回收

62,621

社区成员

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

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