如何实现一个具有多个实例的类,其中没有一个可以相等

时间:2015-04-25 10:46:11

标签: java design-patterns

我的实现将包含一个表示源存储库的java类。我希望我的实现是每个源存储库只有一个对象。如果每个源存储库完成多个实例化,我想要一个唯一的对象来表示要返回的源存储库。

是否有任何众所周知的模式/实践来实现这一目标?

注意:如果只需要一个唯一的对象,我就会使用Singleton模式。在我的场景中,可以有多个对象,没有两个对象代表相同的源存储库。

1 个答案:

答案 0 :(得分:4)

  • 保存静态地图存储库=>实例。
  • 使构造函数成为私有
  • 编写静态方法以获取具有所需存储库的实例作为参数
  • 从地图中获取实例,如果不存在,请创建实例,将其放入地图并将其返回