如何传播常用对象的引用?

时间:2014-11-13 11:58:04

标签: java dependency-injection singleton

我的应用程序中有一个对象,需要在几个点上。这意味着,有很多对象,它们拥有对这个对象的引用。 是否有一种简单的方法,将此引用传播到所有其他对象? 一种可能性是使用单身人士。 另一种方法是使用依赖注入。 这些想法是好的做法还是有更好的方法来做到这一点?

谢谢!

2 个答案:

答案 0 :(得分:2)

由于您需要与所有其他对象共享相同的对象,因此使其成为一个不错的选择。 (如果该对象是其类的唯一实例。否则,您可以实现类似的操作,但将其称为Singleton在技术上是不正确的。)

依赖注入使您的代码独立于特定对象的类和构造过程。如果您有多个可以在不同情况下使用的类,那么依赖注入将有所帮助。如果getInstance()方法的返回类型是接口,则单例模式本身可以是一种注入依赖关系的方式。您不一定非必须使用依赖注入框架。

答案 1 :(得分:1)

如果只有一个要引用的实例,请使用Singleton,您可以根据需要选择Eager initializationLazy Initialization

或者,如果您有多个实例而不是一个,请使用object pooling