run*_*ako 67

根据要求,这里有一些类比:

  • 地球
  • 宇宙
  • 元素氧(还有其他元素,但只有一个氧.有很多氧分子,但只有一个规范的氧元素.)
  • 真实的概念
  • 虚假的概念

您可以实例化许多True对象,但它们都将引用相同的实际项目(即True的通用概念).根据您应用程序的域,可能会有更具体的示例:

  • 数据库连接
  • 应用程序的主线程
  • 任何代表硬件设备的东西(即你只想实例化一个代表CPU0的对象).

  • 化学家.文科专业的学生会抱怨我使用"真与假"作为普遍性.科幻人士会抱怨我错过了多元宇宙.OP得到了我的意思.:-) (14认同)
  • 地球当然不是单身,它是星球的一个实例;-) (14认同)
  • 我不确定与氧气比较是否合适; 有许多分子具有相同的配置,我们将其归类为氧气,它们都是可以彼此独立操作的不同分子. (2认同)

Jus*_*ner 18

单例是一个类,在您的应用程序中只能有一个实例.然后,您在整个应用程序中共享该实例.

这里有一个可能有用的链接(包括如何在c#中使你的单例线程安全):

在C#中实现Singleton模式


Mar*_*tin 13

辛格尔顿是有用的,当你必须确保有一个只有一个类的实例,而这个对象必须从代码中的多个位置进行访问.

如果你的类的多个实例可以同时使用是有意义的,那么你不需要单例.

以下是有关单身人士使用位置的一些信息:http: //www.ibm.com/developerworks/webservices/library/co-single.html

从前面提到的文章:

要确定一个班级是否真的是一个单身人士,你必须问自己一些问题.

  • 每个应用程序都会以完全相同的方式使用此类吗?(确切地说是关键词)
  • 每个应用程序是否只需要此类的一个实例?
    (永远和一个是关键词)
  • 这个类的客户是否应该不知道他们所属的应用程序

    如果您对所有三个问题的回答都是肯定的,那么您就找到了一个单身人士.这里的关键点是,如果所有应用程序都完全相同,并且客户端可以在没有应用程序上下文的情况下使用该类,则类只是单例.


归档时间:

查看次数:

4088 次

最近记录:

14 年,5 月 前