答案 1
您可以在实例化类(单例模式)时使用工厂静态初始值设定项,然后将工厂构造函数中的每个生成的实例添加到 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
}
}
答案 2
一般不行。如果您使用的是调试器API,则可能是可能的(我还没有检查),但除了调试之外,您不应该使用它。
如果你的设计需要这个,那么可能值得重新思考这个设计。
推荐
-
-
在 IntelliJ IDEA 中自动重新加载 Java 类资源 例如,在 Eclipse 中,在开发 Web 应用程序时,对包内 HTML 文件所做的任何更改在浏览器中查看时都会自动反映出来,即使程序正在运行时也是如此。 在IntelliJ IDEA中似乎并非如此。因此,每次对HT
-
如何获取与数组类型关联的类? 有没有人知道写以下语句的更好方法: 我需要数组类型,但我不知道是否有更好的解决方案。目前,这个例子对我有用,但也许有人知道一种更好的方法,可以在没有关键字的情况下做同样的
-
为什么要将对象分配给接口? 我听过好几次,在实例化对象时,你应该这样做: “接口”名称 = 新的“类”(); 例如,对于实现的类链接列表: 为什么还必须指定两次类型;这似乎是多余的,但预言家似乎没有提到它。
-
泛型和类<?extendes Enum<?>>, EnumSet.allOf(class) vs class.getEnumConstants() 我有以下BeanValidation代码,可以正常工作,并允许验证Bean是否注释: