【发布时间】:2014-02-23 09:07:39
【问题描述】:
我遇到了一个关于设计模式的问题。
它要求在一个类的两个实例被创建的场景中使用 apt 设计模式。我不确定答案,但后来的描述说 Singleton 可以用于这种情况。它说 Singleton 可以确保只创建一个类的一个实例或一个固定数量的实例(不是一个)。
我一直将单例模式理解为一种模式,其中只能创建一个类的一个对象,因此这个解释让我感到惊讶。我不确定我是否同意。
有什么想法吗?
阿迪亚
【问题讨论】:
-
我认为你想要的是一个 pool,其中有固定数量的对象,你可以得到一个,然后将其释放回池中。这通常通过线程池中的线程来完成。
-
当然你可以实现类似的东西,但我不会再称之为“单例模式”了。
-
实际上并不相关,但单例作为一种设计模式长期以来一直被认为是一种反实践。如果你想使用真正的单例,你应该使用
@Singleton注释或类似的依赖注入