How to create a class which can only have a single instance in C#

前端 未结 6 624
梦如初夏
梦如初夏 2020-12-19 08:09

I wonder if there is a mechanism or pattern to allow only one instance of a class in C#. I have heard of the Singleton class, but i don\'t know how to use it we

6条回答
  •  时光取名叫无心
    2020-12-19 09:04

    Using singleton, that is a class which only allows a single instance of itself to be created.

    public sealed class Singleton
    {
         public static readonly Singleton instance = new Singleton();
         private Singleton() {}
    }
    

    The operation of this pattern is simple and could be reduced to the following:

    Hide the constructor of the Singleton class, so that clients may not be instantiated. To declare the Singleton class private member variable containing the reference to the unique instance that we handle. Provide in class Singleton a function or property that provides access to the one maintained by the Singleton instance.

提交回复
热议问题