获取类的所有实例

可能重复:
是否有一种简单的方法可以在Java中获取特定类的所有对象实例

在java中,是否有任何可能的方法来获取某个类的所有实例?

您可以在实例化类( Singleton模式 )时使用Factory静态初始化程序,然后将工厂构造函数中的每个生成的实例添加到List …

像这样的东西:

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 } } 

不一般。 如果您正在使用调试器API,则可能(我还没有检查过),但除了调试之外,您不应该使用它。

如果您的设计需要这样,那么可能值得重新思考该设计。