我有一个类似于以下的弹簧bean:
public class MyServiceImpl {
private MyDAO myDAO;
public class MyInnerClass implements SomeInterface<MyInnerClass> {
@Override
public MyInnerClass loadFreshObject(final String key) {
return myDAO.load(key);
}
}
}
Run Code Online (Sandbox Code Playgroud)
MyInnerClass正在Spring bean之外的代码中创建实例,但不保留对这些实例的引用.
假设我无法控制这些公共非静态内部类的使用(我知道这些将是私有的和静态的,以避免泄漏对'this'的引用),创建的'MyInnerClass'实例是否会被正确地垃圾收集?
我通过覆盖finalize()它来运行我自己的测试,看起来实例正确地被垃圾收集,我只是希望澄清这一点.
谢谢