假設有兩個類,ObjectA和ObjectB。類對象A必須創建ObjectB
類的對象如下的方法:如何存儲對一個類的所有對象的引用?
private ObjectB createObjectB() {
Object b = new ObjectB();
return b;
}
我想跟蹤ObjectB
所有實例。有什麼更好的方法來做到這一點?
- 跟蹤類
ObjectA
中的所有對象爲ArrayList
。 - 或
ObjectB
中的某些類變量。
每種方法的優缺點是什麼?如果我知道ObjectB
對象只能通過ObjectA中的這一個方法創建,它是否會產生影響?
請注意,將只有一個ObjectA
實例,但ObjectB
的實例數量是可變的。
這取決於您需要跟蹤對象的所有實例的原因。你的用例是什麼? – Jeffrey
需要使用哪些參考? – n00begon
爲了最大限度地獲取ObjectB實例的垃圾回收列表[** weak references **](http://docs.oracle.com/javase/7/docs/api/java/lang/ref/WeakReference.html)應該保持;在那裏有一些微弱的參考文獻集,但不幸的是不在JSE中。 –