当前位置:  开发笔记 > 编程语言 > 正文

如何在C#中实现单例?

如何解决《如何在C#中实现单例?》经验,为你挑选了3个好方法。

如何在C#中实现单例模式?我想把我的常量和一些基本功能放在其中,因为我在我的项目中使用它们.我想让它们'全局',而不需要手动绑定它们我创建的每个对象.



1> tvanfosson..:

如果您只是存储一些全局值并且有一些不需要状态的方法,则不需要单例.只需使类及其属性/方法保持静态.

public static class GlobalSomething
{
   public static int NumberOfSomething { get; set; }

   public static string MangleString( string someValue )
   {
   }
}

当你有一个普通的有状态的类时,单例是最有用的,但你只需要其中一个.其他人提供的链接应该有助于探索Singleton模式.



2> yfeldblum..:

Singleton != Global.您似乎在寻找关键字static.



3> 小智..:

仅当以下两个条件都成立时,单例才有意义:

    该对象必须是全局的

    只能存在该对象的单个实例

请注意,#2,并不意味着你会喜欢的对象只有一个实例-如果多数民众赞成的情况下,简单地初始化它只有一次-这意味着必须(如中,这是危险的,这是不正确的)只能是单个实例。

如果要全局,只需创建某个(非符号)对象的全局实例(或使其成为静态对象或其他对象)。如果只需要一个实例,那么static是您的朋友。同样,只需实例化一个对象即可。

多数民众赞成在我的意见。

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有