class MyObject {
private static List instances = new ArrayList();
public static MyObject createMyObject() {
MyObject o = new MyObject();
instances.add(new java.lang.ref.WeakReference(o));
return o;
}
public static List getInstances() {
return instances;
}
private MyObject() {
// Not allowed
}
}
Set<MyObject> instances = Collections.newSetFromMap(new WeakHashMap<MyObject, Boolean>());
- Peter Lawrey一般情况下是不允许的。如果您正在使用调试器API,这可能是可能的(我没有检查过),但您不应该在非调试情况下使用它。
如果您的设计需要这样做,那么重新考虑您的设计可能会更值得。