Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# c、 在类定义本身中创建对象实例的概念的名称是什么?_C#_Class_Singleton - Fatal编程技术网

C# c、 在类定义本身中创建对象实例的概念的名称是什么?

C# c、 在类定义本身中创建对象实例的概念的名称是什么?,c#,class,singleton,C#,Class,Singleton,我遇到了单例设计模式,并注意到了这一点,单例结构是唯一可以在类定义本身中创建对象的地方吗?不,您可以随时这样做,至于概念的名称,我认为没有。在使用私有构造函数的一个示例中,可以使用多个值使类类似于enum,并具有作为同一类实例的静态只读字段。 顺便说一句,我不想在这方面强调太多,而是去做需要做的事情,即使singleton是设计模式,在某种程度上它也是反模式的。singleton是一个相对的术语 一旦您接受了这一点,就可以将IoC容器视为一个可以使用的地方。 它并不试图使构造多个实例变得困难,但

我遇到了单例设计模式,并注意到了这一点,单例结构是唯一可以在类定义本身中创建对象的地方吗?

不,您可以随时这样做,至于概念的名称,我认为没有。在使用私有构造函数的一个示例中,可以使用多个值使类类似于enum,并具有作为同一类实例的静态只读字段。
顺便说一句,我不想在这方面强调太多,而是去做需要做的事情,即使singleton是设计模式,在某种程度上它也是反模式的。

singleton是一个相对的术语

一旦您接受了这一点,就可以将IoC容器视为一个可以使用的地方。 它并不试图使构造多个实例变得困难,但它使每个计划使用一个实例以及根据需要使用其他实例(如在测试中)变得容易