class A {}
class B {
static A someReference = null;
void foo () {
// does calling this function many times create new objects, or all objects will point to one memory.
someReference = new A;
}
}
没有引用静态意味着它无法指向新的内存位置。 谢谢。
答案 0 :(得分:3)
//多次调用此函数创建新对象,或者所有对象都指向一个内存。
致电new A()
始终创建新对象。
当引用(someReference
)重新分配给新创建的对象时,旧对象可能有资格进行垃圾收集。
答案 1 :(得分:2)
多次调用导致foo()
的{{1}}每次都会创建new A()
的新实例。
但是,之前的实例符合垃圾回收条件(因为A
不再指向它),并且在下一个垃圾回收周期中很快就会被删除。