什么是其他对象获取指向单例的指针的有效方法?

时间:2011-01-12 05:39:58

标签: java oop

其他对象获取指向单例的指针的有效方法是什么?在我的例子中,我有一个Data对象,在应用程序初始化时创建,许多对象需要触摸它。它是final并且应该在整个应用程序生命周期中存在。数据共享是通过interface完成的(字段未公开)。

这实际上是两个问题:

  1. 对象应如何获得引用 到Data
  2. 他们应该得到一次吗?     并存储它,或者只是每次都得到它     他们需要时间吗?

2 个答案:

答案 0 :(得分:4)

1 - Data类定义中的访问器方法应该可以解决这个问题。

public class Data
{
  private static Data myData = null;

  private Data() // Private constructor for singletons
  {
     // ...
  }

  public static Data getInstance()
  {
     if(myData == null)
         myData = new Data();

     return myData;
  }
}

2 - 我相信它将作为参考存储在Java中,而不是对象的副本,所以我认为这不重要。无论你喜欢什么编码。

答案 1 :(得分:1)

我会要求你通过EFFECTIVE JAVA的第1项来了解单身人士的所有信息。
你可以知道所有进出。